Hi all,

I received structural variant calling results for the comparison of two bacterial genomes and I have multiple structural variants named "**Breakends**" and characterized as "SYMBOLIC" type. I've tried to search litterature article about it but it seems that there is not a proper definition. 

Could I have some help to understand what a breakend is actually?

Thank you in advance,
Audrey
The best place to help is probably to look at section 5.4 of the VCF specification https://samtools.github.io/hts-specs/VCFv4.3.pdf

This describes it in detail, and it is pretty accessible to read. That said, breakends can be difficult to properly interpret. It can require putting together multiple records (e.g. multiple lines) of the VCF file to understand what is going on.

For example in VCF, you could use the syntax <INV> to represent a inversion (this example is from the spec above)

```
#CHROM POS ID REF ALT QUAL FILTER INFO
2 321682 INV0 T <INV> 6 PASS SVTYPE=INV;END=421681

```

or that same inversion could be described the breakends:
```
#CHROM POS ID REF ALT QUAL FILTER INFO
2 321681 bnd W G G]2 : 421681] 6 PASS SVTYPE=BND;MATEID=bnd U;EVENT=INV0
2 321682 bnd V T [2 : 421682[T 6 PASS SVTYPE=BND;MATEID=bnd X;EVENT=INV0
2 421681 bnd U A A]2 : 321681] 6 PASS SVTYPE=BND;MATEID=bnd W;EVENT=INV0
2 421682 bnd X C [2 : 321682[C 6 PASS SVTYPE=BND;MATEID=bnd V;EVENT=INV0
```

You might ask, why would you represent it using breakends if you could have the more simple <INV> representation? One reason might be that it might not just be a simple INV, where two points in the genome are flipped around...it may be more complex and lead to something like an "INVDUP"

See https://kero.hgc.jp/examples/CLCL/hg38/index.html for a good example and visualization of an INVDUP

![enter image description here][1]


That above thing would likely be represented as a series of breakends. But you could also ask, well, why not just say that INVDUP example like this?
```
2 321682 INV0 T <INVDUP> 6 PASS SVTYPE=INVDUP;END=421681
```


The reason might be that breakends can express more precision than that, giving the precise breakpoints, at the cost of being a bit harder to interpret. We have been working on jbrowse 2 to try to make tools for people to interpret breakends, but it is still challenging. 


  [1]: /media/images/37a716ad-7723-4c0b-8666-f6d80c3d