IMP Tutorial
|
This tutorial continues on from the introduction to cross-linking tutorial.
There are several way one can deal with ambiguity of XL-MS data. Let's define the possible ambiguities:
There are several models on how to implement the identification ambiguity.
One way to do it is to use the UniqueID
keyword; cross-links with the same UniqueID are considered ambiguous:
In the example above, cross-links ProtA:1-ProtB:10 and ProtA:1-ProtB:11 are ambiguous because they were assigned to the same UniqueID.
Now we create a conversion map between internal keywords of xlinks features and the one in the file:
With this keyword interpreter, let's read the cross-link database:
Let's check that the database looks ok:
1 --- XLUniqueID 1 --- XLUniqueSubIndex 1 --- XLUniqueSubID 1.1 --- Protein1 ProtA --- Protein2 ProtB --- Residue1 1 --- Residue2 10 --- IDScore 1.0 --- Redundancy 1 --- RedundancyList ['1.1'] --- Ambiguity 2 --- Residue1LinksNumber 3 --- Residue2LinksNumber 1 ------------- --- XLUniqueID 1 --- XLUniqueSubIndex 2 --- XLUniqueSubID 1.2 --- Protein1 ProtA --- Protein2 ProtB --- Residue1 1 --- Residue2 11 --- IDScore 2.0 --- Redundancy 1 --- RedundancyList ['1.2'] --- Ambiguity 2 --- Residue1LinksNumber 3 --- Residue2LinksNumber 1 ------------- 2 --- XLUniqueID 2 --- XLUniqueSubIndex 1 --- XLUniqueSubID 2.1 --- Protein1 ProtA --- Protein2 ProtB --- Residue1 1 --- Residue2 21 --- IDScore 2.0 --- Redundancy 1 --- RedundancyList ['2.1'] --- Ambiguity 1 --- Residue1LinksNumber 3 --- Residue2LinksNumber 1 -------------
As you can see there are two unique indexes, 1 and 2. The first spectral index contains two identifications, with subindexes 1.1 and 1.2, corresponding to the two ambiguous restraints.
Compositional ambiguity occurs when identical copies of the same protein are present in the sample, and we are not able to attribute the cross-link to one or the other copy.
Let's suppose we already have an identification ambiguity, to complicate the example, and see how the two ambiguities combine with each other. See the data below; note that two cross-links have the same UniqueID:
We will first create a database:
Now, we know that there are two copies of ProtA, which we called ProtA.1 and ProtA.2 in our IMP Hierarchy. Let's rename ProtA into ProtA.1 for both ends of each cross-link:
Next we clone all cross-links involving ProtA.1 so that they were observed also by ProtA.2:
Let's check that the database looks OK:
1 --- XLUniqueID 1 --- XLUniqueSubIndex 1 --- XLUniqueSubID 1.1 --- Protein1 ProtA.1 --- Protein2 ProtB --- Residue1 1 --- Residue2 10 --- IDScore 1.0 --- Redundancy 1 --- RedundancyList ['1.1'] --- Ambiguity 4 --- Residue1LinksNumber 5 --- Residue2LinksNumber 2 ------------- --- XLUniqueID 1 --- XLUniqueSubIndex 2 --- XLUniqueSubID 1.2 --- Protein1 ProtA.2 --- Protein2 ProtB --- Residue1 1 --- Residue2 10 --- IDScore 1.0 --- Redundancy 1 --- RedundancyList ['1.2'] --- Ambiguity 4 --- Residue1LinksNumber 5 --- Residue2LinksNumber 2 ------------- --- XLUniqueID 1 --- XLUniqueSubIndex 3 --- XLUniqueSubID 1.3 --- Protein1 ProtA.1 --- Protein2 ProtB --- Residue1 1 --- Residue2 11 --- IDScore 2.0 --- Redundancy 1 --- RedundancyList ['1.3'] --- Ambiguity 4 --- Residue1LinksNumber 5 --- Residue2LinksNumber 2 ------------- --- XLUniqueID 1 --- XLUniqueSubIndex 4 --- XLUniqueSubID 1.4 --- Protein1 ProtA.2 --- Protein2 ProtB --- Residue1 1 --- Residue2 11 --- IDScore 2.0 --- Redundancy 1 --- RedundancyList ['1.4'] --- Ambiguity 4 --- Residue1LinksNumber 5 --- Residue2LinksNumber 2 ------------- 2 --- XLUniqueID 2 --- XLUniqueSubIndex 1 --- XLUniqueSubID 2.1 --- Protein1 ProtB --- Protein2 ProtA.1 --- Residue1 21 --- Residue2 1 --- IDScore 2.0 --- Redundancy 1 --- RedundancyList ['2.1'] --- Ambiguity 2 --- Residue1LinksNumber 2 --- Residue2LinksNumber 5 ------------- --- XLUniqueID 2 --- XLUniqueSubIndex 2 --- XLUniqueSubID 2.2 --- Protein1 ProtB --- Protein2 ProtA.2 --- Residue1 21 --- Residue2 1 --- IDScore 2.0 --- Redundancy 1 --- RedundancyList ['2.2'] --- Ambiguity 2 --- Residue1LinksNumber 2 --- Residue2LinksNumber 5 ------------- 3 --- XLUniqueID 3 --- XLUniqueSubIndex 1 --- XLUniqueSubID 3.1 --- Protein1 ProtA.1 --- Protein2 ProtA.1 --- Residue1 1 --- Residue2 2 --- IDScore 3.0 --- Redundancy 1 --- RedundancyList ['3.1'] --- Ambiguity 4 --- Residue1LinksNumber 5 --- Residue2LinksNumber 2 ------------- --- XLUniqueID 3 --- XLUniqueSubIndex 2 --- XLUniqueSubID 3.2 --- Protein1 ProtA.2 --- Protein2 ProtA.1 --- Residue1 1 --- Residue2 2 --- IDScore 3.0 --- Redundancy 1 --- RedundancyList ['3.2'] --- Ambiguity 4 --- Residue1LinksNumber 5 --- Residue2LinksNumber 2 ------------- --- XLUniqueID 3 --- XLUniqueSubIndex 3 --- XLUniqueSubID 3.3 --- Protein1 ProtA.1 --- Protein2 ProtA.2 --- Residue1 1 --- Residue2 2 --- IDScore 3.0 --- Redundancy 1 --- RedundancyList ['3.3'] --- Ambiguity 4 --- Residue1LinksNumber 5 --- Residue2LinksNumber 2 ------------- --- XLUniqueID 3 --- XLUniqueSubIndex 4 --- XLUniqueSubID 3.4 --- Protein1 ProtA.2 --- Protein2 ProtA.2 --- Residue1 1 --- Residue2 2 --- IDScore 3.0 --- Redundancy 1 --- RedundancyList ['3.4'] --- Ambiguity 4 --- Residue1LinksNumber 5 --- Residue2LinksNumber 2 -------------
As you can see there are three unique indexes, 1, 2 and 3. The first index contains four cross-links, the second two cross-links and the third four cross-links.