123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705 |
- // Copyright 2016 Google Inc.
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
- syntax = "proto3";
- package google.genomics.v1;
- import "google/api/annotations.proto";
- import "google/protobuf/empty.proto";
- import "google/protobuf/field_mask.proto";
- import "google/protobuf/struct.proto";
- import "google/protobuf/wrappers.proto";
- import "google/rpc/status.proto";
- option cc_enable_arenas = true;
- option go_package = "google.golang.org/genproto/googleapis/genomics/v1;genomics";
- option java_multiple_files = true;
- option java_outer_classname = "AnnotationsProto";
- option java_package = "com.google.genomics.v1";
- // This service provides storage and positional retrieval of genomic
- // reference annotations, including variant annotations.
- service AnnotationServiceV1 {
- // Creates a new annotation set. Caller must have WRITE permission for the
- // associated dataset.
- //
- // The following fields are required:
- //
- // * [datasetId][google.genomics.v1.AnnotationSet.dataset_id]
- // * [referenceSetId][google.genomics.v1.AnnotationSet.reference_set_id]
- //
- // All other fields may be optionally specified, unless documented as being
- // server-generated (for example, the `id` field).
- rpc CreateAnnotationSet(CreateAnnotationSetRequest) returns (AnnotationSet) {
- option (google.api.http) = {
- post: "/v1/annotationsets"
- body: "annotation_set"
- };
- }
- // Gets an annotation set. Caller must have READ permission for
- // the associated dataset.
- rpc GetAnnotationSet(GetAnnotationSetRequest) returns (AnnotationSet) {
- option (google.api.http) = {
- get: "/v1/annotationsets/{annotation_set_id}"
- };
- }
- // Updates an annotation set. The update must respect all mutability
- // restrictions and other invariants described on the annotation set resource.
- // Caller must have WRITE permission for the associated dataset.
- rpc UpdateAnnotationSet(UpdateAnnotationSetRequest) returns (AnnotationSet) {
- option (google.api.http) = {
- put: "/v1/annotationsets/{annotation_set_id}"
- body: "annotation_set"
- };
- }
- // Deletes an annotation set. Caller must have WRITE permission
- // for the associated annotation set.
- rpc DeleteAnnotationSet(DeleteAnnotationSetRequest)
- returns (google.protobuf.Empty) {
- option (google.api.http) = {
- delete: "/v1/annotationsets/{annotation_set_id}"
- };
- }
- // Searches for annotation sets that match the given criteria. Annotation sets
- // are returned in an unspecified order. This order is consistent, such that
- // two queries for the same content (regardless of page size) yield annotation
- // sets in the same order across their respective streams of paginated
- // responses. Caller must have READ permission for the queried datasets.
- rpc SearchAnnotationSets(SearchAnnotationSetsRequest)
- returns (SearchAnnotationSetsResponse) {
- option (google.api.http) = {
- post: "/v1/annotationsets/search"
- body: "*"
- };
- }
- // Creates a new annotation. Caller must have WRITE permission
- // for the associated annotation set.
- //
- // The following fields are required:
- //
- // * [annotationSetId][google.genomics.v1.Annotation.annotation_set_id]
- // * [referenceName][google.genomics.v1.Annotation.reference_name] or
- // [referenceId][google.genomics.v1.Annotation.reference_id]
- //
- // ### Transcripts
- //
- // For annotations of type TRANSCRIPT, the following fields of
- // [transcript][google.genomics.v1.Annotation.transcript] must be provided:
- //
- // * [exons.start][google.genomics.v1.Transcript.Exon.start]
- // * [exons.end][google.genomics.v1.Transcript.Exon.end]
- //
- // All other fields may be optionally specified, unless documented as being
- // server-generated (for example, the `id` field). The annotated
- // range must be no longer than 100Mbp (mega base pairs). See the
- // [Annotation resource][google.genomics.v1.Annotation]
- // for additional restrictions on each field.
- rpc CreateAnnotation(CreateAnnotationRequest) returns (Annotation) {
- option (google.api.http) = {
- post: "/v1/annotations"
- body: "annotation"
- };
- }
- // Creates one or more new annotations atomically. All annotations must
- // belong to the same annotation set. Caller must have WRITE
- // permission for this annotation set. For optimal performance, batch
- // positionally adjacent annotations together.
- //
- // If the request has a systemic issue, such as an attempt to write to
- // an inaccessible annotation set, the entire RPC will fail accordingly. For
- // lesser data issues, when possible an error will be isolated to the
- // corresponding batch entry in the response; the remaining well formed
- // annotations will be created normally.
- //
- // For details on the requirements for each individual annotation resource,
- // see
- // [CreateAnnotation][google.genomics.v1.AnnotationServiceV1.CreateAnnotation].
- rpc BatchCreateAnnotations(BatchCreateAnnotationsRequest)
- returns (BatchCreateAnnotationsResponse) {
- option (google.api.http) = {
- post: "/v1/annotations:batchCreate"
- body: "*"
- };
- }
- // Gets an annotation. Caller must have READ permission
- // for the associated annotation set.
- rpc GetAnnotation(GetAnnotationRequest) returns (Annotation) {
- option (google.api.http) = {
- get: "/v1/annotations/{annotation_id}"
- };
- }
- // Updates an annotation. Caller must have
- // WRITE permission for the associated dataset.
- rpc UpdateAnnotation(UpdateAnnotationRequest) returns (Annotation) {
- option (google.api.http) = {
- put: "/v1/annotations/{annotation_id}"
- body: "annotation"
- };
- }
- // Deletes an annotation. Caller must have WRITE permission for
- // the associated annotation set.
- rpc DeleteAnnotation(DeleteAnnotationRequest)
- returns (google.protobuf.Empty) {
- option (google.api.http) = {
- delete: "/v1/annotations/{annotation_id}"
- };
- }
- // Searches for annotations that match the given criteria. Results are
- // ordered by genomic coordinate (by reference sequence, then position).
- // Annotations with equivalent genomic coordinates are returned in an
- // unspecified order. This order is consistent, such that two queries for the
- // same content (regardless of page size) yield annotations in the same order
- // across their respective streams of paginated responses. Caller must have
- // READ permission for the queried annotation sets.
- rpc SearchAnnotations(SearchAnnotationsRequest)
- returns (SearchAnnotationsResponse) {
- option (google.api.http) = {
- post: "/v1/annotations/search"
- body: "*"
- };
- }
- }
- // An annotation set is a logical grouping of annotations that share consistent
- // type information and provenance. Examples of annotation sets include 'all
- // genes from refseq', and 'all variant annotations from ClinVar'.
- message AnnotationSet {
- // The server-generated annotation set ID, unique across all annotation sets.
- string id = 1;
- // The dataset to which this annotation set belongs.
- string dataset_id = 2;
- // The ID of the reference set that defines the coordinate space for this
- // set's annotations.
- string reference_set_id = 3;
- // The display name for this annotation set.
- string name = 4;
- // The source URI describing the file from which this annotation set was
- // generated, if any.
- string source_uri = 5;
- // The type of annotations contained within this set.
- AnnotationType type = 6;
- // A map of additional read alignment information. This must be of the form
- // map<string, string[]> (string key mapping to a list of string values).
- map<string, google.protobuf.ListValue> info = 17;
- }
- // An annotation describes a region of reference genome. The value of an
- // annotation may be one of several canonical types, supplemented by arbitrary
- // info tags. An annotation is not inherently associated with a specific
- // sample or individual (though a client could choose to use annotations in
- // this way). Example canonical annotation types are `GENE` and
- // `VARIANT`.
- message Annotation {
- // The server-generated annotation ID, unique across all annotations.
- string id = 1;
- // The annotation set to which this annotation belongs.
- string annotation_set_id = 2;
- // The display name of this annotation.
- string name = 3;
- // The ID of the Google Genomics reference associated with this range.
- string reference_id = 4;
- // The display name corresponding to the reference specified by
- // `referenceId`, for example `chr1`, `1`, or `chrX`.
- string reference_name = 5;
- // The start position of the range on the reference, 0-based inclusive.
- int64 start = 6;
- // The end position of the range on the reference, 0-based exclusive.
- int64 end = 7;
- // Whether this range refers to the reverse strand, as opposed to the forward
- // strand. Note that regardless of this field, the start/end position of the
- // range always refer to the forward strand.
- bool reverse_strand = 8;
- // The data type for this annotation. Must match the containing annotation
- // set's type.
- AnnotationType type = 9;
- oneof value {
- // A variant annotation, which describes the effect of a variant on the
- // genome, the coding sequence, and/or higher level consequences at the
- // organism level e.g. pathogenicity. This field is only set for annotations
- // of type `VARIANT`.
- VariantAnnotation variant = 10;
- // A transcript value represents the assertion that a particular region of
- // the reference genome may be transcribed as RNA. An alternative splicing
- // pattern would be represented as a separate transcript object. This field
- // is only set for annotations of type `TRANSCRIPT`.
- Transcript transcript = 11;
- }
- // A map of additional read alignment information. This must be of the form
- // map<string, string[]> (string key mapping to a list of string values).
- map<string, google.protobuf.ListValue> info = 12;
- }
- message VariantAnnotation {
- message ClinicalCondition {
- // A set of names for the condition.
- repeated string names = 1;
- // The set of external IDs for this condition.
- repeated ExternalId external_ids = 2;
- // The MedGen concept id associated with this gene.
- // Search for these IDs at http://www.ncbi.nlm.nih.gov/medgen/
- string concept_id = 3;
- // The OMIM id for this condition.
- // Search for these IDs at http://omim.org/
- string omim_id = 4;
- }
- enum Type {
- TYPE_UNSPECIFIED = 0;
- // `TYPE_OTHER` should be used when no other Type will suffice.
- // Further explanation of the variant type may be included in the
- // [info][google.genomics.v1.Annotation.info] field.
- TYPE_OTHER = 1;
- // `INSERTION` indicates an insertion.
- INSERTION = 2;
- // `DELETION` indicates a deletion.
- DELETION = 3;
- // `SUBSTITUTION` indicates a block substitution of
- // two or more nucleotides.
- SUBSTITUTION = 4;
- // `SNP` indicates a single nucleotide polymorphism.
- SNP = 5;
- // `STRUCTURAL` indicates a large structural variant,
- // including chromosomal fusions, inversions, etc.
- STRUCTURAL = 6;
- // `CNV` indicates a variation in copy number.
- CNV = 7;
- }
- enum Effect {
- EFFECT_UNSPECIFIED = 0;
- // `EFFECT_OTHER` should be used when no other Effect
- // will suffice.
- EFFECT_OTHER = 1;
- // `FRAMESHIFT` indicates a mutation in which the insertion or
- // deletion of nucleotides resulted in a frameshift change.
- FRAMESHIFT = 2;
- // `FRAME_PRESERVING_INDEL` indicates a mutation in which a
- // multiple of three nucleotides has been inserted or deleted, resulting
- // in no change to the reading frame of the coding sequence.
- FRAME_PRESERVING_INDEL = 3;
- // `SYNONYMOUS_SNP` indicates a single nucleotide polymorphism
- // mutation that results in no amino acid change.
- SYNONYMOUS_SNP = 4;
- // `NONSYNONYMOUS_SNP` indicates a single nucleotide
- // polymorphism mutation that results in an amino acid change.
- NONSYNONYMOUS_SNP = 5;
- // `STOP_GAIN` indicates a mutation that leads to the creation
- // of a stop codon at the variant site. Frameshift mutations creating
- // downstream stop codons do not count as `STOP_GAIN`.
- STOP_GAIN = 6;
- // `STOP_LOSS` indicates a mutation that eliminates a
- // stop codon at the variant site.
- STOP_LOSS = 7;
- // `SPLICE_SITE_DISRUPTION` indicates that this variant is
- // found in a splice site for the associated transcript, and alters the
- // normal splicing pattern.
- SPLICE_SITE_DISRUPTION = 8;
- }
- enum ClinicalSignificance {
- CLINICAL_SIGNIFICANCE_UNSPECIFIED = 0;
- // `OTHER` should be used when no other clinical significance
- // value will suffice.
- CLINICAL_SIGNIFICANCE_OTHER = 1;
- UNCERTAIN = 2;
- BENIGN = 3;
- LIKELY_BENIGN = 4;
- LIKELY_PATHOGENIC = 5;
- PATHOGENIC = 6;
- DRUG_RESPONSE = 7;
- HISTOCOMPATIBILITY = 8;
- CONFERS_SENSITIVITY = 9;
- RISK_FACTOR = 10;
- ASSOCIATION = 11;
- PROTECTIVE = 12;
- // `MULTIPLE_REPORTED` should be used when multiple clinical
- // signficances are reported for a variant. The original clinical
- // significance values may be provided in the `info` field.
- MULTIPLE_REPORTED = 13;
- }
- // Type has been adapted from ClinVar's list of variant types.
- Type type = 1;
- // Effect of the variant on the coding sequence.
- Effect effect = 2;
- // The alternate allele for this variant. If multiple alternate alleles
- // exist at this location, create a separate variant for each one, as they
- // may represent distinct conditions.
- string alternate_bases = 3;
- // Google annotation ID of the gene affected by this variant. This should
- // be provided when the variant is created.
- string gene_id = 4;
- // Google annotation IDs of the transcripts affected by this variant. These
- // should be provided when the variant is created.
- repeated string transcript_ids = 5;
- // The set of conditions associated with this variant.
- // A condition describes the way a variant influences human health.
- repeated ClinicalCondition conditions = 6;
- // Describes the clinical significance of a variant.
- // It is adapted from the ClinVar controlled vocabulary for clinical
- // significance described at:
- // http://www.ncbi.nlm.nih.gov/clinvar/docs/clinsig/
- ClinicalSignificance clinical_significance = 7;
- }
- // A transcript represents the assertion that a particular region of the
- // reference genome may be transcribed as RNA.
- message Transcript {
- message Exon {
- // The start position of the exon on this annotation's reference sequence,
- // 0-based inclusive. Note that this is relative to the reference start, and
- // **not** the containing annotation start.
- int64 start = 1;
- // The end position of the exon on this annotation's reference sequence,
- // 0-based exclusive. Note that this is relative to the reference start, and
- // *not* the containing annotation start.
- int64 end = 2;
- // The frame of this exon. Contains a value of 0, 1, or 2, which indicates
- // the offset of the first coding base of the exon within the reading frame
- // of the coding DNA sequence, if any. This field is dependent on the
- // strandedness of this annotation (see
- // [Annotation.reverse_strand][google.genomics.v1.Annotation.reverse_strand]).
- // For forward stranded annotations, this offset is relative to the
- // [exon.start][google.genomics.v1.Transcript.Exon.start]. For reverse
- // strand annotations, this offset is relative to the
- // [exon.end][google.genomics.v1.Transcript.Exon.end] `- 1`.
- //
- // Unset if this exon does not intersect the coding sequence. Upon creation
- // of a transcript, the frame must be populated for all or none of the
- // coding exons.
- google.protobuf.Int32Value frame = 3;
- }
- message CodingSequence {
- // The start of the coding sequence on this annotation's reference sequence,
- // 0-based inclusive. Note that this position is relative to the reference
- // start, and *not* the containing annotation start.
- int64 start = 1;
- // The end of the coding sequence on this annotation's reference sequence,
- // 0-based exclusive. Note that this position is relative to the reference
- // start, and *not* the containing annotation start.
- int64 end = 2;
- }
- // The annotation ID of the gene from which this transcript is transcribed.
- string gene_id = 1;
- // The <a href="http://en.wikipedia.org/wiki/Exon">exons</a> that compose
- // this transcript. This field should be unset for genomes where transcript
- // splicing does not occur, for example prokaryotes.
- //
- // Introns are regions of the transcript that are not included in the
- // spliced RNA product. Though not explicitly modeled here, intron ranges can
- // be deduced; all regions of this transcript that are not exons are introns.
- //
- // Exonic sequences do not necessarily code for a translational product
- // (amino acids). Only the regions of exons bounded by the
- // [codingSequence][google.genomics.v1.Transcript.coding_sequence] correspond
- // to coding DNA sequence.
- //
- // Exons are ordered by start position and may not overlap.
- repeated Exon exons = 2;
- // The range of the coding sequence for this transcript, if any. To determine
- // the exact ranges of coding sequence, intersect this range with those of the
- // [exons][google.genomics.v1.Transcript.exons], if any. If there are any
- // [exons][google.genomics.v1.Transcript.exons], the
- // [codingSequence][google.genomics.v1.Transcript.coding_sequence] must start
- // and end within them.
- //
- // Note that in some cases, the reference genome will not exactly match the
- // observed mRNA transcript e.g. due to variance in the source genome from
- // reference. In these cases,
- // [exon.frame][google.genomics.v1.Transcript.Exon.frame] will not necessarily
- // match the expected reference reading frame and coding exon reference bases
- // cannot necessarily be concatenated to produce the original transcript mRNA.
- CodingSequence coding_sequence = 3;
- }
- message ExternalId {
- // The name of the source of this data.
- string source_name = 1;
- // The id used by the source of this data.
- string id = 2;
- }
- message CreateAnnotationSetRequest {
- // The annotation set to create.
- AnnotationSet annotation_set = 1;
- }
- message GetAnnotationSetRequest {
- // The ID of the annotation set to be retrieved.
- string annotation_set_id = 1;
- }
- message UpdateAnnotationSetRequest {
- // The ID of the annotation set to be updated.
- string annotation_set_id = 1;
- // The new annotation set.
- AnnotationSet annotation_set = 2;
- // An optional mask specifying which fields to update. Mutable fields are
- // [name][google.genomics.v1.AnnotationSet.name],
- // [source_uri][google.genomics.v1.AnnotationSet.source_uri], and
- // [info][google.genomics.v1.AnnotationSet.info]. If unspecified, all
- // mutable fields will be updated.
- google.protobuf.FieldMask update_mask = 3;
- }
- message DeleteAnnotationSetRequest {
- // The ID of the annotation set to be deleted.
- string annotation_set_id = 1;
- }
- message SearchAnnotationSetsRequest {
- // Required. The dataset IDs to search within. Caller must have `READ` access
- // to these datasets.
- repeated string dataset_ids = 1;
- // If specified, only annotation sets associated with the given reference set
- // are returned.
- string reference_set_id = 2;
- // Only return annotations sets for which a substring of the name matches this
- // string (case insensitive).
- string name = 3;
- // If specified, only annotation sets that have any of these types are
- // returned.
- repeated AnnotationType types = 4;
- // The continuation token, which is used to page through large result sets.
- // To get the next page of results, set this parameter to the value of
- // `nextPageToken` from the previous response.
- string page_token = 5;
- // The maximum number of results to return in a single page. If unspecified,
- // defaults to 128. The maximum value is 1024.
- int32 page_size = 6;
- }
- message SearchAnnotationSetsResponse {
- // The matching annotation sets.
- repeated AnnotationSet annotation_sets = 1;
- // The continuation token, which is used to page through large result sets.
- // Provide this value in a subsequent request to return the next page of
- // results. This field will be empty if there aren't any additional results.
- string next_page_token = 2;
- }
- message CreateAnnotationRequest {
- // The annotation to be created.
- Annotation annotation = 1;
- }
- message BatchCreateAnnotationsRequest {
- // The annotations to be created. At most 4096 can be specified in a single
- // request.
- repeated Annotation annotations = 1;
- // A unique request ID which enables the server to detect duplicated requests.
- // If provided, duplicated requests will result in the same response; if not
- // provided, duplicated requests may result in duplicated data. For a given
- // annotation set, callers should not reuse `request_id`s when writing
- // different batches of annotations - behavior in this case is undefined.
- // A common approach is to use a UUID. For batch jobs where worker crashes are
- // a possibility, consider using some unique variant of a worker or run ID.
- string request_id = 2;
- }
- message BatchCreateAnnotationsResponse {
- message Entry {
- // The creation status.
- google.rpc.Status status = 1;
- // The created annotation, if creation was successful.
- Annotation annotation = 2;
- }
- // The resulting per-annotation entries, ordered consistently with the
- // original request.
- repeated Entry entries = 1;
- }
- message GetAnnotationRequest {
- // The ID of the annotation to be retrieved.
- string annotation_id = 1;
- }
- message UpdateAnnotationRequest {
- // The ID of the annotation to be updated.
- string annotation_id = 1;
- // The new annotation.
- Annotation annotation = 2;
- // An optional mask specifying which fields to update. Mutable fields are
- // [name][google.genomics.v1.Annotation.name],
- // [variant][google.genomics.v1.Annotation.variant],
- // [transcript][google.genomics.v1.Annotation.transcript], and
- // [info][google.genomics.v1.Annotation.info]. If unspecified, all mutable
- // fields will be updated.
- google.protobuf.FieldMask update_mask = 3;
- }
- message DeleteAnnotationRequest {
- // The ID of the annotation to be deleted.
- string annotation_id = 1;
- }
- message SearchAnnotationsRequest {
- // Required. The annotation sets to search within. The caller must have
- // `READ` access to these annotation sets.
- // All queried annotation sets must have the same type.
- repeated string annotation_set_ids = 1;
- // Required. `reference_id` or `reference_name` must be set.
- oneof reference {
- // The ID of the reference to query.
- string reference_id = 2;
- // The name of the reference to query, within the reference set associated
- // with this query.
- string reference_name = 3;
- }
- // The start position of the range on the reference, 0-based inclusive. If
- // specified,
- // [referenceId][google.genomics.v1.SearchAnnotationsRequest.reference_id] or
- // [referenceName][google.genomics.v1.SearchAnnotationsRequest.reference_name]
- // must be specified. Defaults to 0.
- int64 start = 4;
- // The end position of the range on the reference, 0-based exclusive. If
- // [referenceId][google.genomics.v1.SearchAnnotationsRequest.reference_id] or
- // [referenceName][google.genomics.v1.SearchAnnotationsRequest.reference_name]
- // must be specified, Defaults to the length of the reference.
- int64 end = 5;
- // The continuation token, which is used to page through large result sets.
- // To get the next page of results, set this parameter to the value of
- // `nextPageToken` from the previous response.
- string page_token = 6;
- // The maximum number of results to return in a single page. If unspecified,
- // defaults to 256. The maximum value is 2048.
- int32 page_size = 7;
- }
- message SearchAnnotationsResponse {
- // The matching annotations.
- repeated Annotation annotations = 1;
- // The continuation token, which is used to page through large result sets.
- // Provide this value in a subsequent request to return the next page of
- // results. This field will be empty if there aren't any additional results.
- string next_page_token = 2;
- }
- // When an [Annotation][google.genomics.v1.Annotation] or
- // [AnnotationSet][google.genomics.v1.AnnotationSet] is created, if `type` is
- // not specified it will be set to `GENERIC`.
- enum AnnotationType {
- ANNOTATION_TYPE_UNSPECIFIED = 0;
- // A `GENERIC` annotation type should be used when no other annotation
- // type will suffice. This represents an untyped annotation of the reference
- // genome.
- GENERIC = 1;
- // A `VARIANT` annotation type.
- VARIANT = 2;
- // A `GENE` annotation type represents the existence of a gene at the
- // associated reference coordinates. The start coordinate is typically the
- // gene's transcription start site and the end is typically the end of the
- // gene's last exon.
- GENE = 3;
- // A `TRANSCRIPT` annotation type represents the assertion that a
- // particular region of the reference genome may be transcribed as RNA.
- TRANSCRIPT = 4;
- }
|