1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
|
#@UGENE_WORKFLOW
# The workflow takes two sets of annotations as input (denoted as A and B).
# It intersects the sets and outputs the result annotations.
#
#There are three options for the output:
# - Shared intervals between overlapped annotations from A and B;
# - Annotations from A that overlap annotations from B;
# - Annotations from A that DO NOT overlap annotations from B.
#
#It is also possible to tweak the percentage of the minimum overlap between A and B annotations.
workflow "Intersect annotations"{
intersect-annotations {
type:intersect-annotations;
name:"Intersect Annotations";
}
read-annotations {
type:read-annotations;
name:"Read Annotations A";
url-in {
dataset:"Dataset 1";
}
}
read-annotations-1 {
type:read-annotations;
name:"Read Annotations B";
url-in {
dataset:"Dataset 1";
}
}
write-annotations {
type:write-annotations;
name:"Write Annotations";
url-out:intersect.gb;
}
.actor-bindings {
intersect-annotations.output-intersect-annotations->write-annotations.in-annotations
read-annotations-1.out-annotations->intersect-annotations.input-annotations-b
read-annotations.out-annotations->intersect-annotations.input-annotations-a
}
read-annotations.annotations->intersect-annotations.input-annotations-a.input-annotations-a
read-annotations-1.annotations->intersect-annotations.input-annotations-b.input-annotations-b
intersect-annotations.output-intersect-annotations->write-annotations.in-annotations.annotations
read-annotations-1.annotations->write-annotations.in-annotations.annotations
read-annotations.annotations->write-annotations.in-annotations.annotations
.meta {
parameter-aliases {
intersect-annotations.minimum-overlap {
alias:min-overlap;
}
intersect-annotations.report {
alias:report;
}
intersect-annotations.unique {
alias:unique;
}
read-annotations.url-in {
alias:in-A;
}
read-annotations-1.url-in {
alias:in-B;
}
write-annotations.document-format {
alias:out-format;
}
write-annotations.url-out {
alias:out-file;
}
}
visual {
intersect-annotations {
pos:"-477 -583";
style:ext;
bg-color-ext:"207 74 41 64";
input-annotations-a.angle:150;
input-annotations-b.angle:210;
output-intersect-annotations.angle:360;
}
read-annotations {
pos:"-810 -693";
style:ext;
bg-color-ext:"0 141 212 64";
bounds:"-30 -30 148.875 87";
out-annotations.angle:360;
}
read-annotations-1 {
pos:"-813 -485";
style:ext;
bg-color-ext:"0 141 212 64";
bounds:"-30 -30 157.5 82";
out-annotations.angle:360;
}
write-annotations {
pos:"-122 -583";
style:ext;
bg-color-ext:"117 86 175 64";
in-annotations.angle:180;
}
intersect-annotations.output-intersect-annotations->write-annotations.in-annotations {
text-pos:"-45 -62";
}
read-annotations-1.out-annotations->intersect-annotations.input-annotations-b {
text-pos:"-44.9609 -28";
}
read-annotations.out-annotations->intersect-annotations.input-annotations-a {
text-pos:"-44.9609 -28";
}
}
wizard {
name:"Intersect Annotations Wizard";
help-page-id:16123490;
auto-run: true;
page {
id:1;
title:"Intersect annotations parameters";
parameters-area {
group {
title:"Input data";
label-size:120;
read-annotations.url-in {
label:"Annotations A";
}
read-annotations-1.url-in {
label:"Annotations B";
}
}
group {
title:"Output data";
label-size:120;
intersect-annotations.report {
label:Report;
}
write-annotations.url-out {
label:"Output file";
}
}
}
}
}
}
}
|