All Downloads are FREE. Search and download functionalities are using the official Maven repository.

protobuf.opencb.vcf_record.proto Maven / Gradle / Ivy

The newest version!
syntax = "proto3";

package protobuf.opencb;

option java_package = "org.opencb.biodata.models.variant.protobuf";
option java_outer_classname = "VcfSliceProtos";
option java_generate_equals_and_hash = true;
//option java_multiple_files = true;

import "protobuf/opencb/variant.proto";

message VcfSample {
  repeated string sample_values = 1;

  // GT is mandatory. Saving it separately can create a map of genotypes in Fields
  uint32 gt_index = 2;
}

message VcfRecord {
  // 1 based
  // May contain negative values but it's not likely
  int32 relative_start = 1;
  // May contain negative values but it's not likely
  int32 relative_end = 2;

  string reference = 3; 
  string alternate = 4;
  float quality = 5;

  VariantType type = 12;
  string call = 13;

  uint32 filter_index = 6;
  repeated string id_non_default = 7;

  repeated uint32 info_key_index = 8 [packed=true];
  repeated string info_value = 9;
  
  uint32 formatIndex = 10;
  repeated VcfSample samples = 11;

  repeated AlternateCoordinate secondaryAlternates = 14;

}

message Fields {
  repeated string info_keys = 1;
  repeated uint32 default_info_keys = 2;

  // Possible filter compositions. Delimited by ';'
  // Where the first filter is the default one
  repeated string filters = 3;

  // Possible formats compositions. Delimited by ':'
  // Where the first format is the default one
  repeated string formats = 5;

  // Possible genotypes seen on the slice.
  // Where the first GT is the default one
  repeated string gts = 6;

}

message VcfSlice {
  string chromosome = 1;
  uint32 position = 2;
  repeated VcfRecord records = 3; // List of records (lines)
// VcfMeta metadata = 4;

  Fields fields = 4;

}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy