doc/src/docbook/user/itemlists.xml

Code
Comments
Other
Rev Date Author Line
6811 30 Mar 15 nicklas 1 <?xml version="1.0" encoding="UTF-8"?>
6811 30 Mar 15 nicklas 2 <!DOCTYPE chapter PUBLIC 
6811 30 Mar 15 nicklas 3     "-//Dawid Weiss//DTD DocBook V3.1-Based Extension for XML and graphics inclusion//EN" 
6811 30 Mar 15 nicklas 4     "../../../../lib/docbook/preprocess/dweiss-docbook-extensions.dtd">
6811 30 Mar 15 nicklas 5 <!--
6811 30 Mar 15 nicklas 6   $Id$
6811 30 Mar 15 nicklas 7   
6811 30 Mar 15 nicklas 8   Copyright (C) 2015 Nicklas Nordborg
6811 30 Mar 15 nicklas 9   
6811 30 Mar 15 nicklas 10   This file is part of BASE - BioArray Software Environment.
6811 30 Mar 15 nicklas 11   Available at http://base.thep.lu.se/
6811 30 Mar 15 nicklas 12   
6811 30 Mar 15 nicklas 13   BASE is free software; you can redistribute it and/or
6811 30 Mar 15 nicklas 14   modify it under the terms of the GNU General Public License
6811 30 Mar 15 nicklas 15   as published by the Free Software Foundation; either version 3
6811 30 Mar 15 nicklas 16   of the License, or (at your option) any later version.
6811 30 Mar 15 nicklas 17   
6811 30 Mar 15 nicklas 18   BASE is distributed in the hope that it will be useful,
6811 30 Mar 15 nicklas 19   but WITHOUT ANY WARRANTY; without even the implied warranty of
6811 30 Mar 15 nicklas 20   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
6811 30 Mar 15 nicklas 21   GNU General Public License for more details.
6811 30 Mar 15 nicklas 22   
6811 30 Mar 15 nicklas 23   You should have received a copy of the GNU General Public License
6811 30 Mar 15 nicklas 24   along with BASE. If not, see <http://www.gnu.org/licenses/>.
6811 30 Mar 15 nicklas 25 -->
6811 30 Mar 15 nicklas 26
6811 30 Mar 15 nicklas 27 <chapter id="itemlists" chunked="0">
6811 30 Mar 15 nicklas 28   <title>Item lists</title>
6811 30 Mar 15 nicklas 29   
6811 30 Mar 15 nicklas 30
6811 30 Mar 15 nicklas 31   <helptext external_id="itemlist.view.properties" title="Item lists">
6811 30 Mar 15 nicklas 32
6811 30 Mar 15 nicklas 33     <para>
6811 30 Mar 15 nicklas 34       Item lists are used for grouping items that are somehow related 
6811 30 Mar 15 nicklas 35       (or not) into a single entity. Some typical use cases are to keep
6811 30 Mar 15 nicklas 36       track of biomaterial that is going to be processed in the lab or
6811 30 Mar 15 nicklas 37       to find raw data sets that are suitable to use in an experiment.
6811 30 Mar 15 nicklas 38     </para>
6811 30 Mar 15 nicklas 39     
6811 30 Mar 15 nicklas 40     <para>
6811 30 Mar 15 nicklas 41       A list may only contain members of a single type. The list below show 
6811 30 Mar 15 nicklas 42       the item types that are currently supported. Support for other item types
6811 30 Mar 15 nicklas 43       may be added in the future.
6811 30 Mar 15 nicklas 44     </para>
6811 30 Mar 15 nicklas 45     
6811 30 Mar 15 nicklas 46     <itemizedlist>
6811 30 Mar 15 nicklas 47       <listitem><simpara>Biosource</simpara></listitem>
6811 30 Mar 15 nicklas 48       <listitem><simpara>Sample</simpara></listitem>
6811 30 Mar 15 nicklas 49       <listitem><simpara>Extract</simpara></listitem>
6811 30 Mar 15 nicklas 50       <listitem><simpara>Physical bioassay</simpara></listitem>
6811 30 Mar 15 nicklas 51       <listitem><simpara>Derived bioassay</simpara></listitem>
6811 30 Mar 15 nicklas 52       <listitem><simpara>Raw bioassay</simpara></listitem>
6811 30 Mar 15 nicklas 53     </itemizedlist>
6811 30 Mar 15 nicklas 54   
6811 30 Mar 15 nicklas 55     <para>
6811 30 Mar 15 nicklas 56       List membership is typically managed either manually, or with
6811 30 Mar 15 nicklas 57       the help of synchronization filters.
6811 30 Mar 15 nicklas 58     </para>
6811 30 Mar 15 nicklas 59
6811 30 Mar 15 nicklas 60     <seeother>
6811 30 Mar 15 nicklas 61       <other external_id="itemlist.edit">Edit item list</other>
6811 30 Mar 15 nicklas 62       <other external_id="itemlist.members">Manage list members manually</other>
6811 30 Mar 15 nicklas 63       <other external_id="itemlist.merge">Merge item lists</other>
6811 30 Mar 15 nicklas 64       <other external_id="itemlist.syncfilters">Synchronization filters overview</other>
6811 30 Mar 15 nicklas 65     </seeother>
6811 30 Mar 15 nicklas 66
6811 30 Mar 15 nicklas 67   </helptext>
6811 30 Mar 15 nicklas 68
6811 30 Mar 15 nicklas 69   <para>
6811 30 Mar 15 nicklas 70     To begin working with item lists go to the
6811 30 Mar 15 nicklas 71     <menuchoice>
6811 30 Mar 15 nicklas 72       <guimenu>View</guimenu>
6811 30 Mar 15 nicklas 73       <guimenuitem>Item lists</guimenuitem>
6811 30 Mar 15 nicklas 74     </menuchoice>. Click on &gbNew; to create a new item list.
6811 30 Mar 15 nicklas 75   </para>
6811 30 Mar 15 nicklas 76
6811 30 Mar 15 nicklas 77     <figure
6811 30 Mar 15 nicklas 78       id="itemlists.figures.editlist">
6811 30 Mar 15 nicklas 79       <title>Item list properties</title>
6811 30 Mar 15 nicklas 80       <screenshot>
6811 30 Mar 15 nicklas 81         <mediaobject>
6811 30 Mar 15 nicklas 82           <imageobject>
6811 30 Mar 15 nicklas 83             <imagedata
6811 30 Mar 15 nicklas 84               fileref="figures/edit_itemlist.png" format="PNG" />
6811 30 Mar 15 nicklas 85           </imageobject>
6811 30 Mar 15 nicklas 86         </mediaobject>
6811 30 Mar 15 nicklas 87       </screenshot>
6811 30 Mar 15 nicklas 88     </figure>
6811 30 Mar 15 nicklas 89     
6811 30 Mar 15 nicklas 90   <helptext external_id="itemlist.edit" 
6811 30 Mar 15 nicklas 91     title="Edit item list">
6811 30 Mar 15 nicklas 92     
6811 30 Mar 15 nicklas 93     <variablelist>
6811 30 Mar 15 nicklas 94       <varlistentry>
6811 30 Mar 15 nicklas 95         <term><guilabel>Name</guilabel></term>
6811 30 Mar 15 nicklas 96         <listitem>
6811 30 Mar 15 nicklas 97           <para>
6811 30 Mar 15 nicklas 98             The name of the item list.
6811 30 Mar 15 nicklas 99           </para>
6811 30 Mar 15 nicklas 100         </listitem>
6811 30 Mar 15 nicklas 101       </varlistentry>
6811 30 Mar 15 nicklas 102       <varlistentry>
6811 30 Mar 15 nicklas 103         <term><guilabel>Member type</guilabel></term>
6811 30 Mar 15 nicklas 104         <listitem>
6811 30 Mar 15 nicklas 105           <para>
6811 30 Mar 15 nicklas 106             The type of the list member items. This must be set 
6811 30 Mar 15 nicklas 107             when the list is created and can't be changed later.
6811 30 Mar 15 nicklas 108           </para>
6811 30 Mar 15 nicklas 109         </listitem>
6811 30 Mar 15 nicklas 110       </varlistentry>
6811 30 Mar 15 nicklas 111       <varlistentry>
6811 30 Mar 15 nicklas 112         <term><guilabel>Subtype</guilabel> (or <guilabel>Raw data type</guilabel>)</term>
6811 30 Mar 15 nicklas 113         <listitem>
6811 30 Mar 15 nicklas 114           <para>
6811 30 Mar 15 nicklas 115             The suptype of items that are expected to be found
6811 30 Mar 15 nicklas 116             in the list. This is not enforced but should only
6811 30 Mar 15 nicklas 117             be considered as a hint to developers for
6811 30 Mar 15 nicklas 118             creating a better user experince. For example,
6811 30 Mar 15 nicklas 119             prefilling filters when selecting items. For item lists
6811 30 Mar 15 nicklas 120             containing raw bioassays a raw data type can be selected instead
6811 30 Mar 15 nicklas 121             of a subtype.
6811 30 Mar 15 nicklas 122           </para>
6811 30 Mar 15 nicklas 123         </listitem>
6811 30 Mar 15 nicklas 124       </varlistentry>
6811 30 Mar 15 nicklas 125       <varlistentry>
6811 30 Mar 15 nicklas 126         <term><guilabel>External ID</guilabel></term>
6811 30 Mar 15 nicklas 127         <listitem>
6811 30 Mar 15 nicklas 128           <para>
6811 30 Mar 15 nicklas 129             An external reference that may or may not be unique. Not used by BASE.
6811 30 Mar 15 nicklas 130           </para>
6811 30 Mar 15 nicklas 131         </listitem>
6811 30 Mar 15 nicklas 132       </varlistentry>
6811 30 Mar 15 nicklas 133       <varlistentry>
6811 30 Mar 15 nicklas 134         <term><guilabel>Modify members</guilabel></term>
6811 30 Mar 15 nicklas 135         <listitem>
6811 30 Mar 15 nicklas 136           <para>
6811 30 Mar 15 nicklas 137             If the <guilabel>Disable manual</guilabel> checkbox is selected, members can't
6811 30 Mar 15 nicklas 138             be manually added to or removed from the list. This also includes using the
6811 30 Mar 15 nicklas 139             merge functionality for creating unions, intersections, etc.
6811 30 Mar 15 nicklas 140           </para>
6811 30 Mar 15 nicklas 141           <para>
6811 30 Mar 15 nicklas 142             If the <guilabel>Disable synchronization filters</guilabel> checkbox is marked, members
6811 30 Mar 15 nicklas 143             can't be modified by synhronization filters. If both options are marked the
6811 30 Mar 15 nicklas 144             list is effectively locked for modifications.
6811 30 Mar 15 nicklas 145           </para>
6811 30 Mar 15 nicklas 146         </listitem>
6811 30 Mar 15 nicklas 147       </varlistentry>
6811 30 Mar 15 nicklas 148       <varlistentry>
6811 30 Mar 15 nicklas 149         <term><guilabel>Description</guilabel></term>
6811 30 Mar 15 nicklas 150         <listitem>
6811 30 Mar 15 nicklas 151           <para>
6811 30 Mar 15 nicklas 152             A description of the item list.
6811 30 Mar 15 nicklas 153           </para>
6811 30 Mar 15 nicklas 154         </listitem>
6811 30 Mar 15 nicklas 155       </varlistentry>
6811 30 Mar 15 nicklas 156     
6811 30 Mar 15 nicklas 157     </variablelist>
6811 30 Mar 15 nicklas 158     
6811 30 Mar 15 nicklas 159     <para>
6811 30 Mar 15 nicklas 160       Click on &gbSave; to save the item list.
6811 30 Mar 15 nicklas 161     </para>
6811 30 Mar 15 nicklas 162     
6811 30 Mar 15 nicklas 163     <note>
6811 30 Mar 15 nicklas 164       <title>Creating an item list from other list pages</title>
6811 30 Mar 15 nicklas 165
6811 30 Mar 15 nicklas 166       <para>
6811 30 Mar 15 nicklas 167         It is also possible to create a new item list directly from several other list pages.
6811 30 Mar 15 nicklas 168         For example, from the samples list page. Click on the <guibutton>New item list&hellip;</guibutton>
6811 30 Mar 15 nicklas 169         button. In this case, the popup dialog has an extra option:
6811 30 Mar 15 nicklas 170       </para>
6811 30 Mar 15 nicklas 171       
6811 30 Mar 15 nicklas 172       <variablelist>
6811 30 Mar 15 nicklas 173         <varlistentry>
6811 30 Mar 15 nicklas 174           <term><guilabel>Source items</guilabel></term>
6811 30 Mar 15 nicklas 175           <listitem>
6811 30 Mar 15 nicklas 176             <para>
6811 30 Mar 15 nicklas 177               Select one of the options to decide which items that should be
6811 30 Mar 15 nicklas 178               added as members to list. You can choose to either add only
6811 30 Mar 15 nicklas 179               the <guilabel>selected</guilabel> items, items on the
6811 30 Mar 15 nicklas 180               <guilabel>current page</guilabel> or <guilabel>all items</guilabel>
6811 30 Mar 15 nicklas 181               matching the current filter. In the latter case, the current filter
6811 30 Mar 15 nicklas 182               may also be saved as a synchronization filter.
6811 30 Mar 15 nicklas 183             </para>
6811 30 Mar 15 nicklas 184           </listitem>
6811 30 Mar 15 nicklas 185         </varlistentry>
6811 30 Mar 15 nicklas 186       </variablelist>
6811 30 Mar 15 nicklas 187       
6811 30 Mar 15 nicklas 188     </note>
6811 30 Mar 15 nicklas 189     
6811 30 Mar 15 nicklas 190     <seeother>
6811 30 Mar 15 nicklas 191       <other external_id="itemlist.view.properties">Item lists overview</other>
6811 30 Mar 15 nicklas 192     </seeother>
6811 30 Mar 15 nicklas 193
6811 30 Mar 15 nicklas 194   </helptext>
6811 30 Mar 15 nicklas 195
6811 30 Mar 15 nicklas 196   <sect1 id="itemlists.members">
6811 30 Mar 15 nicklas 197     <title>Manage list members manually</title>
6811 30 Mar 15 nicklas 198     
6811 30 Mar 15 nicklas 199     <helptext external_id="itemlist.members" title="Manage list members manually">
6811 30 Mar 15 nicklas 200     <para>
6811 30 Mar 15 nicklas 201       To manually manage the members go to the <guilabel>Members</guilabel> tab
6811 30 Mar 15 nicklas 202       on the single-item view page for the item list. Use the <guibutton>Add&hellip;</guibutton>
6811 30 Mar 15 nicklas 203       button to start adding members. This will open a regular list view in a popup
6811 30 Mar 15 nicklas 204       window. The only difference is that there are extra buttons at the bottom
6811 30 Mar 15 nicklas 205       of the page.
6811 30 Mar 15 nicklas 206     </para>
6811 30 Mar 15 nicklas 207     
6811 30 Mar 15 nicklas 208     <variablelist>
6811 30 Mar 15 nicklas 209       <varlistentry>
6811 30 Mar 15 nicklas 210         <term><guilabel>Add selected</guilabel></term>
6811 30 Mar 15 nicklas 211         <listitem>
6811 30 Mar 15 nicklas 212           <para>
6811 30 Mar 15 nicklas 213             This button will add all selected items in the popup to the 
6811 30 Mar 15 nicklas 214             item list.
6811 30 Mar 15 nicklas 215           </para>
6811 30 Mar 15 nicklas 216         </listitem>
6811 30 Mar 15 nicklas 217       </varlistentry>
6811 30 Mar 15 nicklas 218       <varlistentry>
6811 30 Mar 15 nicklas 219         <term><guilabel>Add current page</guilabel></term>
6811 30 Mar 15 nicklas 220         <listitem>
6811 30 Mar 15 nicklas 221           <para>
6811 30 Mar 15 nicklas 222             This button will add all items that are displayed on the current
6811 30 Mar 15 nicklas 223             page to the item list.
6811 30 Mar 15 nicklas 224           </para>
6811 30 Mar 15 nicklas 225         </listitem>
6811 30 Mar 15 nicklas 226       </varlistentry>
6811 30 Mar 15 nicklas 227       <varlistentry>
6811 30 Mar 15 nicklas 228         <term><guilabel>Add all</guilabel></term>
6811 30 Mar 15 nicklas 229         <listitem>
6811 30 Mar 15 nicklas 230           <para>
6811 30 Mar 15 nicklas 231             This button will add all items that are matching the current
6811 30 Mar 15 nicklas 232             filter to the item list. If there is no filter on the table, all
6811 30 Mar 15 nicklas 233             items will be added to the item list.
6811 30 Mar 15 nicklas 234           </para>
6811 30 Mar 15 nicklas 235         </listitem>
6811 30 Mar 15 nicklas 236       </varlistentry>
6811 30 Mar 15 nicklas 237       <varlistentry>
6811 30 Mar 15 nicklas 238         <term><guilabel>Close</guilabel></term>
6811 30 Mar 15 nicklas 239         <listitem>
6811 30 Mar 15 nicklas 240           <para>
6811 30 Mar 15 nicklas 241             Closes the popup without adding any members to the item list.
6811 30 Mar 15 nicklas 242           </para>
6811 30 Mar 15 nicklas 243         </listitem>
6811 30 Mar 15 nicklas 244       </varlistentry>
6811 30 Mar 15 nicklas 245     </variablelist>
6811 30 Mar 15 nicklas 246     
6811 30 Mar 15 nicklas 247     <para>
6811 30 Mar 15 nicklas 248       Back on the members page for the item list, the new members should now appear
6811 30 Mar 15 nicklas 249       in the table. To remove members use the <guibutton>Remove&hellip;</guibutton> button. 
6811 30 Mar 15 nicklas 250       This button will only remove members that has been selected.
6811 30 Mar 15 nicklas 251     </para>
6811 30 Mar 15 nicklas 252     
7620 04 Mar 19 nicklas 253     <tip>
7620 04 Mar 19 nicklas 254       <title>Use batch importers to add and remove members</title>
7620 04 Mar 19 nicklas 255       <para>
7620 04 Mar 19 nicklas 256       The batch importer plug-ins have support for adding and removing members.
7620 04 Mar 19 nicklas 257       Simply start the importer from the <guibutton>Import&hellip;</guibutton> button
7620 04 Mar 19 nicklas 258       and select <property>add-members</property> or <property>remove-members</property>
7620 04 Mar 19 nicklas 259       for the <guilabel>Mode</guilabel> parameter. The importers can also be used for
7620 04 Mar 19 nicklas 260       updating member items.
7620 04 Mar 19 nicklas 261       </para>
7620 04 Mar 19 nicklas 262     </tip>
7620 04 Mar 19 nicklas 263     
6811 30 Mar 15 nicklas 264     <seeother>
6811 30 Mar 15 nicklas 265       <other external_id="itemlist.view.properties">Item lists overview</other>
6811 30 Mar 15 nicklas 266     </seeother>
6811 30 Mar 15 nicklas 267     
6811 30 Mar 15 nicklas 268     </helptext>
6811 30 Mar 15 nicklas 269   </sect1>
6811 30 Mar 15 nicklas 270
6811 30 Mar 15 nicklas 271   <sect1 id="itemlists.merge">
6811 30 Mar 15 nicklas 272     <title>Merging lists</title>
6811 30 Mar 15 nicklas 273     
6811 30 Mar 15 nicklas 274     <helptext external_id="itemlist.merge" title="Merging lists">
6811 30 Mar 15 nicklas 275     <para>
6811 30 Mar 15 nicklas 276       From the <guilabel>Properties</guilabel> tab it is possible to
6811 30 Mar 15 nicklas 277       access the merge functions that can be used to add and/or remove
6811 30 Mar 15 nicklas 278       members with the help of other item lists. There
6811 30 Mar 15 nicklas 279       are three basic operations that all open the same popup  dialog, but
6811 30 Mar 15 nicklas 280       with different options pre-selected.
6811 30 Mar 15 nicklas 281     </para>
6811 30 Mar 15 nicklas 282     
6811 30 Mar 15 nicklas 283     <variablelist>
6811 30 Mar 15 nicklas 284       <varlistentry>
6811 30 Mar 15 nicklas 285         <term><guibutton>Union&hellip;</guibutton></term>
6811 30 Mar 15 nicklas 286         <listitem>
6811 30 Mar 15 nicklas 287           <para>
6811 30 Mar 15 nicklas 288             For creating a list that is a union of the members in
6811 30 Mar 15 nicklas 289             several other lists.
6811 30 Mar 15 nicklas 290           </para>
6811 30 Mar 15 nicklas 291         </listitem>
6811 30 Mar 15 nicklas 292       </varlistentry>
6811 30 Mar 15 nicklas 293       <varlistentry>
6811 30 Mar 15 nicklas 294         <term><guibutton>Intersection&hellip;</guibutton></term>
6811 30 Mar 15 nicklas 295         <listitem>
6811 30 Mar 15 nicklas 296           <para>
6811 30 Mar 15 nicklas 297             For creating a list that is the intersection of members
6811 30 Mar 15 nicklas 298             of this list and several other list. 
6811 30 Mar 15 nicklas 299           </para>
6811 30 Mar 15 nicklas 300         </listitem>
6811 30 Mar 15 nicklas 301       </varlistentry>
6811 30 Mar 15 nicklas 302       <varlistentry>
6811 30 Mar 15 nicklas 303         <term><guibutton>Complement&hellip;</guibutton></term>
6811 30 Mar 15 nicklas 304         <listitem>
6811 30 Mar 15 nicklas 305           <para>
6811 30 Mar 15 nicklas 306             For removing members from this list that
6811 30 Mar 15 nicklas 307             are not members in other lists.
6811 30 Mar 15 nicklas 308           </para>
6811 30 Mar 15 nicklas 309         </listitem>
6811 30 Mar 15 nicklas 310       </varlistentry>
6811 30 Mar 15 nicklas 311     </variablelist>
6811 30 Mar 15 nicklas 312     
6811 30 Mar 15 nicklas 313     <para>
6811 30 Mar 15 nicklas 314       In the popup dialog it is possible to create other combinations as well.
6811 30 Mar 15 nicklas 315       They are all illustrated with a figure to make it easier to understand 
6811 30 Mar 15 nicklas 316       what the final result is going to be.
6811 30 Mar 15 nicklas 317     </para>
6811 30 Mar 15 nicklas 318
6811 30 Mar 15 nicklas 319     <nohelp>
6811 30 Mar 15 nicklas 320     <figure
6811 30 Mar 15 nicklas 321       id="itemlists.figures.merge">
6811 30 Mar 15 nicklas 322       <title>Merging lists</title>
6811 30 Mar 15 nicklas 323       <screenshot>
6811 30 Mar 15 nicklas 324         <mediaobject>
6811 30 Mar 15 nicklas 325           <imageobject>
6811 30 Mar 15 nicklas 326             <imagedata
6811 30 Mar 15 nicklas 327               fileref="figures/itemlist_merge.png" format="PNG" />
6811 30 Mar 15 nicklas 328           </imageobject>
6811 30 Mar 15 nicklas 329         </mediaobject>
6811 30 Mar 15 nicklas 330       </screenshot>
6811 30 Mar 15 nicklas 331     </figure>
6811 30 Mar 15 nicklas 332     </nohelp>
6811 30 Mar 15 nicklas 333     
6811 30 Mar 15 nicklas 334     <variablelist>
6811 30 Mar 15 nicklas 335       <varlistentry>
6811 30 Mar 15 nicklas 336         <term><guilabel>What to do</guilabel></term>
6811 30 Mar 15 nicklas 337         <listitem>
6811 30 Mar 15 nicklas 338           <para>
6811 30 Mar 15 nicklas 339             There are two selection lists that are used to describe how the 
6811 30 Mar 15 nicklas 340             selected item lists should be merged. The illustration to the right
6811 30 Mar 15 nicklas 341             is automatically updated to give a schematic overview of the effects
6811 30 Mar 15 nicklas 342             of the current selection.
6811 30 Mar 15 nicklas 343             The first selection list have three options.
6811 30 Mar 15 nicklas 344           </para>
6811 30 Mar 15 nicklas 345           <para>
6811 30 Mar 15 nicklas 346             The <guilabel>Add items</guilabel> option will only add members to
6811 30 Mar 15 nicklas 347             this list. This creates a union-like merge operation.
6811 30 Mar 15 nicklas 348           </para>
6811 30 Mar 15 nicklas 349           <para>
6811 30 Mar 15 nicklas 350             The <guilabel>Keep items</guilabel> option will remove members
6811 30 Mar 15 nicklas 351             from this list depending on if they are members of the 
6811 30 Mar 15 nicklas 352             other lists or not. This creates an intersection-like merge operation.
6811 30 Mar 15 nicklas 353           </para>
6811 30 Mar 15 nicklas 354           <para>
6811 30 Mar 15 nicklas 355             The <guilabel>Remove item</guilabel> option also remove members
6811 30 Mar 15 nicklas 356             from this list depending of if they are members of the other
6811 30 Mar 15 nicklas 357             lists or not. This creates a complement-like merge operation.
6811 30 Mar 15 nicklas 358           </para>
6811 30 Mar 15 nicklas 359         </listitem>
6811 30 Mar 15 nicklas 360       </varlistentry>
6811 30 Mar 15 nicklas 361     
6811 30 Mar 15 nicklas 362       <varlistentry>
6811 30 Mar 15 nicklas 363         <term><guilabel>Other lists</guilabel></term>
6811 30 Mar 15 nicklas 364         <listitem>
6811 30 Mar 15 nicklas 365           <para>
6811 30 Mar 15 nicklas 366             Before the merge operation can take place, you must select at
6811 30 Mar 15 nicklas 367             least one other item list containing members of the same type
6811 30 Mar 15 nicklas 368             as this item list.
6811 30 Mar 15 nicklas 369           </para>
6811 30 Mar 15 nicklas 370         </listitem>
6811 30 Mar 15 nicklas 371       </varlistentry>
6811 30 Mar 15 nicklas 372       </variablelist>
6811 30 Mar 15 nicklas 373       
6811 30 Mar 15 nicklas 374       <para>
6811 30 Mar 15 nicklas 375         Click on &gbOk; to perform the merge.
6811 30 Mar 15 nicklas 376       </para>
6811 30 Mar 15 nicklas 377       
6811 30 Mar 15 nicklas 378       <seeother>
6811 30 Mar 15 nicklas 379         <other external_id="itemlist.view.properties">Item lists overview</other>
6811 30 Mar 15 nicklas 380       </seeother>
6811 30 Mar 15 nicklas 381     </helptext>
6811 30 Mar 15 nicklas 382   </sect1>
6811 30 Mar 15 nicklas 383
6811 30 Mar 15 nicklas 384
6811 30 Mar 15 nicklas 385   <sect1 id="itemlists.syncfilters">
6811 30 Mar 15 nicklas 386     <title>Synchronization filters</title>
6811 30 Mar 15 nicklas 387
6811 30 Mar 15 nicklas 388
6811 30 Mar 15 nicklas 389     <helptext external_id="itemlist.syncfilters" title="Synchronization filters">
6811 30 Mar 15 nicklas 390       <para>
6811 30 Mar 15 nicklas 391         Synchronization filters are a powerful way of keeping an 
6811 30 Mar 15 nicklas 392         item list synchronized with a predefined set of filter conditions.
6811 30 Mar 15 nicklas 393         It is possible to apply filters on any level in the parent/child chain
6811 30 Mar 15 nicklas 394         going from biosource to physical bioassays to raw bioassays.
6811 30 Mar 15 nicklas 395         For example:
6811 30 Mar 15 nicklas 396       </para>
6811 30 Mar 15 nicklas 397       
6811 30 Mar 15 nicklas 398       <itemizedlist>
6811 30 Mar 15 nicklas 399         <listitem>
6811 30 Mar 15 nicklas 400           <para>
6811 30 Mar 15 nicklas 401           Start by creating an empty item list that should contain
6811 30 Mar 15 nicklas 402           samples with subtype <emphasis>Blood</emphasis>.
6811 30 Mar 15 nicklas 403           </para>
6811 30 Mar 15 nicklas 404         </listitem>
6811 30 Mar 15 nicklas 405         <listitem>
6811 30 Mar 15 nicklas 406           <para>
6811 30 Mar 15 nicklas 407           Then add a filter that says that the parent biosource, which is 
6811 30 Mar 15 nicklas 408           of subtype <emphasis>Patient</emphasis>, must have an annotation
6811 30 Mar 15 nicklas 409           <emphasis>Consent = Yes</emphasis>. This should make sure that you 
6811 30 Mar 15 nicklas 410           only work with samples that you know you have permission to use.
6811 30 Mar 15 nicklas 411           </para>
6811 30 Mar 15 nicklas 412         </listitem>
6811 30 Mar 15 nicklas 413         <listitem>
6811 30 Mar 15 nicklas 414           <para>
6811 30 Mar 15 nicklas 415           Add another filter that says that a child extract, which is 
6811 30 Mar 15 nicklas 416           of subtype <emphasis>RNA</emphasis>, must have an annotation
6811 30 Mar 15 nicklas 417           <emphasis>Quality &gt; 8</emphasis>. This should make sure that you 
6811 30 Mar 15 nicklas 418           only work with samples that you know are of good quality.
6811 30 Mar 15 nicklas 419           </para>
6811 30 Mar 15 nicklas 420         </listitem>
6811 30 Mar 15 nicklas 421         <listitem>
6811 30 Mar 15 nicklas 422           <para>
6811 30 Mar 15 nicklas 423           Finally, add a filter that says that a child raw bioassay
6811 30 Mar 15 nicklas 424           must have an annotation <emphasis>Aligned &gt; 10,000,000</emphasis>.
6811 30 Mar 15 nicklas 425           This should make sure that you only work with samples that you
6811 30 Mar 15 nicklas 426           have good sequencing data from.
6811 30 Mar 15 nicklas 427           </para>
6811 30 Mar 15 nicklas 428         </listitem>
6811 30 Mar 15 nicklas 429         
6811 30 Mar 15 nicklas 430       </itemizedlist>
6811 30 Mar 15 nicklas 431       
6811 30 Mar 15 nicklas 432       <seeother>
6811 30 Mar 15 nicklas 433         <other external_id="syncfilter.edit">Edit synchronization filter</other>
6811 30 Mar 15 nicklas 434         <other external_id="itemlist.resync">Synchronizing the list</other>
6811 30 Mar 15 nicklas 435         <other external_id="itemlist.view.properties">Item lists overview</other>
6811 30 Mar 15 nicklas 436       </seeother>
6811 30 Mar 15 nicklas 437       
6811 30 Mar 15 nicklas 438     </helptext>
6811 30 Mar 15 nicklas 439     
6811 30 Mar 15 nicklas 440     <para>
6811 30 Mar 15 nicklas 441       To create a synchronization filter use the 
6811 30 Mar 15 nicklas 442       <guibutton>Add filter&hellip;</guibutton> button on the item list view page.
6811 30 Mar 15 nicklas 443     </para>
6811 30 Mar 15 nicklas 444
6811 30 Mar 15 nicklas 445     <figure
6811 30 Mar 15 nicklas 446       id="itemlists.figures.syncfilter">
6811 30 Mar 15 nicklas 447       <title>Edit synchronization filter</title>
6811 30 Mar 15 nicklas 448       <screenshot>
6811 30 Mar 15 nicklas 449         <mediaobject>
6811 30 Mar 15 nicklas 450           <imageobject>
6811 30 Mar 15 nicklas 451             <imagedata
6811 30 Mar 15 nicklas 452               fileref="figures/edit_syncfilter.png" format="PNG" />
6811 30 Mar 15 nicklas 453           </imageobject>
6811 30 Mar 15 nicklas 454         </mediaobject>
6811 30 Mar 15 nicklas 455       </screenshot>
6811 30 Mar 15 nicklas 456     </figure>
6811 30 Mar 15 nicklas 457     
6811 30 Mar 15 nicklas 458     <helptext external_id="syncfilter.edit"
6811 30 Mar 15 nicklas 459       title="Edit synchronization filter">
6811 30 Mar 15 nicklas 460     
6811 30 Mar 15 nicklas 461       <variablelist>
6811 30 Mar 15 nicklas 462       <varlistentry>
6811 30 Mar 15 nicklas 463         <term><guilabel>Name</guilabel></term>
6811 30 Mar 15 nicklas 464         <listitem>
6811 30 Mar 15 nicklas 465           <para>
6811 30 Mar 15 nicklas 466             Give the filter a descriptive name to make it easier to know what it does.
6811 30 Mar 15 nicklas 467           </para>
6811 30 Mar 15 nicklas 468         </listitem>
6811 30 Mar 15 nicklas 469       </varlistentry>
6811 30 Mar 15 nicklas 470       <varlistentry>
7901 21 Jan 21 nicklas 471         <term><guilabel>Filter group</guilabel></term>
7901 21 Jan 21 nicklas 472         <listitem>
7901 21 Jan 21 nicklas 473           <para>
7901 21 Jan 21 nicklas 474             Synchronization filters in a list can be grouped into subgroups
7901 21 Jan 21 nicklas 475             and this affects how items are combined into the final list.
7901 21 Jan 21 nicklas 476             Filters in the same group are evaluated together and items must
7901 21 Jan 21 nicklas 477             match all of them. Items matching a "+" group are included in the list.
7901 21 Jan 21 nicklas 478             Items matching a "-" group are excluded from the list. The groups are
7901 21 Jan 21 nicklas 479             processed in alphabetical order.
7901 21 Jan 21 nicklas 480           </para>
7901 21 Jan 21 nicklas 481         </listitem>
7901 21 Jan 21 nicklas 482       </varlistentry>
7901 21 Jan 21 nicklas 483       <varlistentry>
6811 30 Mar 15 nicklas 484         <term><guilabel>Disabled</guilabel></term>
6811 30 Mar 15 nicklas 485         <listitem>
6811 30 Mar 15 nicklas 486           <para>
6811 30 Mar 15 nicklas 487             A disabled filter is not used when synchronizing the list members.
6811 30 Mar 15 nicklas 488             This feature is useful when searching for problems.
6811 30 Mar 15 nicklas 489           </para>
6811 30 Mar 15 nicklas 490         </listitem>
6811 30 Mar 15 nicklas 491       </varlistentry>
6811 30 Mar 15 nicklas 492       <varlistentry>
6811 30 Mar 15 nicklas 493         <term><guilabel>Filter</guilabel></term>
6811 30 Mar 15 nicklas 494         <listitem>
6811 30 Mar 15 nicklas 495           <para>
6811 30 Mar 15 nicklas 496             This section defines the filter. In the first row you must select
6811 30 Mar 15 nicklas 497             if the filter should be used for finding items on the 
6811 30 Mar 15 nicklas 498             <guilabel>same level</guilabel> as the members in the list
6811 30 Mar 15 nicklas 499             or for finding <guilabel>Parent items</guilabel> or <guilabel>Child items</guilabel>.
6811 30 Mar 15 nicklas 500             Note that some options may be missing if the item list should contain members
6811 30 Mar 15 nicklas 501             that are already at the top or bottom of the parent/child chain.
6811 30 Mar 15 nicklas 502           </para>
6811 30 Mar 15 nicklas 503           <para>
6811 30 Mar 15 nicklas 504             If the parent or child item option is selected from the first list,
6811 30 Mar 15 nicklas 505             a second list allows you to specify the type of the parent or child
6811 30 Mar 15 nicklas 506             item. This list should only contain item types that are relevant as
6811 30 Mar 15 nicklas 507             seen from the starting point. For example, if the item list contain samples
6811 30 Mar 15 nicklas 508             the only types of parent items are other samples or biosources.
6811 30 Mar 15 nicklas 509           </para>
6811 30 Mar 15 nicklas 510           <para>
6811 30 Mar 15 nicklas 511             The last option allows you specify if a parent or child 
6811 30 Mar 15 nicklas 512             <guilabel>must exist</guilabel> or if it <guilabel>must not exist</guilabel>.
6811 30 Mar 15 nicklas 513             The latter option is usful when searching for samples that has failed in some
6811 30 Mar 15 nicklas 514             step in the processing (so that no child item has been registered).
6811 30 Mar 15 nicklas 515           </para>
6811 30 Mar 15 nicklas 516           <para>
6811 30 Mar 15 nicklas 517             The actual filter is displayed below the selection list. It is
6811 30 Mar 15 nicklas 518             typically empty to begin with. Use the icon to the right to open 
6811 30 Mar 15 nicklas 519             a popup dialog containing a list view listing the items that you
6811 30 Mar 15 nicklas 520             want to filter on. Manipulate this list view by adding filters
6811 30 Mar 15 nicklas 521             and then click on <guibutton>Ok</guibutton> when you are done. The
6811 30 Mar 15 nicklas 522             current list filter is saved to the synchronization filter and is
6811 30 Mar 15 nicklas 523             displayed in the dialog.
6811 30 Mar 15 nicklas 524           </para>
6811 30 Mar 15 nicklas 525         </listitem>
6811 30 Mar 15 nicklas 526       </varlistentry>
6811 30 Mar 15 nicklas 527       <varlistentry>
6811 30 Mar 15 nicklas 528         <term><guilabel>Description</guilabel></term>
6811 30 Mar 15 nicklas 529         <listitem>
6811 30 Mar 15 nicklas 530           <para>
6811 30 Mar 15 nicklas 531             You may want to add a more detailed description of what the
6811 30 Mar 15 nicklas 532             filter does.
6811 30 Mar 15 nicklas 533           </para>
6811 30 Mar 15 nicklas 534         </listitem>
6811 30 Mar 15 nicklas 535       </varlistentry>
6811 30 Mar 15 nicklas 536       </variablelist>
6811 30 Mar 15 nicklas 537     
6811 30 Mar 15 nicklas 538       <para>
6811 30 Mar 15 nicklas 539         Click on &gbSave; to save the filter. The view page should automatically
6811 30 Mar 15 nicklas 540         be updated and will most likely display a warning that the list is out of 
6811 30 Mar 15 nicklas 541         sync. You can ignore this warning and add more synchronization filters.
6811 30 Mar 15 nicklas 542       </para>
6811 30 Mar 15 nicklas 543     
6811 30 Mar 15 nicklas 544       <seeother>
6811 30 Mar 15 nicklas 545         <other external_id="itemlist.syncfilters">Synchronization filters overview</other>
6811 30 Mar 15 nicklas 546         <other external_id="itemlist.resync">Synchronizing the list</other>
6811 30 Mar 15 nicklas 547         <other external_id="itemlist.view.properties">Item lists overview</other>
6811 30 Mar 15 nicklas 548       </seeother>
6811 30 Mar 15 nicklas 549     </helptext>
6811 30 Mar 15 nicklas 550     
6811 30 Mar 15 nicklas 551     <para>
6811 30 Mar 15 nicklas 552       When all filters has been created click on the <guibutton>Re-sync&hellip;</guibutton> button
6811 30 Mar 15 nicklas 553       to start the synchronization process.
6811 30 Mar 15 nicklas 554     </para>
6811 30 Mar 15 nicklas 555     
6811 30 Mar 15 nicklas 556     <figure
6811 30 Mar 15 nicklas 557       id="itemlists.figures.resync">
6811 30 Mar 15 nicklas 558       <title>Synchronizing the list</title>
6811 30 Mar 15 nicklas 559       <screenshot>
6811 30 Mar 15 nicklas 560         <mediaobject>
6811 30 Mar 15 nicklas 561           <imageobject>
6811 30 Mar 15 nicklas 562             <imagedata
6811 30 Mar 15 nicklas 563               fileref="figures/itemlist_resync.png" format="PNG" />
6811 30 Mar 15 nicklas 564           </imageobject>
6811 30 Mar 15 nicklas 565         </mediaobject>
6811 30 Mar 15 nicklas 566       </screenshot>
6811 30 Mar 15 nicklas 567     </figure>
6811 30 Mar 15 nicklas 568     
6811 30 Mar 15 nicklas 569     <helptext external_id="itemlist.resync"
6811 30 Mar 15 nicklas 570       title="Synchronizing the item list">
6811 30 Mar 15 nicklas 571     
6811 30 Mar 15 nicklas 572       <variablelist>
6811 30 Mar 15 nicklas 573       <varlistentry>
6811 30 Mar 15 nicklas 574         <term><guilabel>Sync options</guilabel></term>
6811 30 Mar 15 nicklas 575         <listitem>
6811 30 Mar 15 nicklas 576           <para>
6811 30 Mar 15 nicklas 577             The <guilabel>Full</guilabel> option will both add members to and remove
6811 30 Mar 15 nicklas 578             members from the list so that all items are matching the current filters.
6811 30 Mar 15 nicklas 579           </para>
6811 30 Mar 15 nicklas 580           <para>
6811 30 Mar 15 nicklas 581             The <guilabel>Add only</guilabel> option will only add members to
6811 30 Mar 15 nicklas 582             the list. The new members are those matching the current filters that
6811 30 Mar 15 nicklas 583             are not already in the list. Existing members that doesn't match
6811 30 Mar 15 nicklas 584             the filters are not removed.
6811 30 Mar 15 nicklas 585           </para>
6811 30 Mar 15 nicklas 586           <para>
6811 30 Mar 15 nicklas 587             The <guilabel>Remove only</guilabel> option will only remove members from
6811 30 Mar 15 nicklas 588             the list. The removed members are those that no longer match the filters.
6811 30 Mar 15 nicklas 589             New items that are found to match the filters are not added to the list.
6811 30 Mar 15 nicklas 590           </para>
6811 30 Mar 15 nicklas 591         </listitem>
6811 30 Mar 15 nicklas 592       </varlistentry>
6811 30 Mar 15 nicklas 593       <varlistentry>
6811 30 Mar 15 nicklas 594         <term><guilabel>Subtype</guilabel> (or <guilabel>Raw data type</guilabel>)</term>
6811 30 Mar 15 nicklas 595         <listitem>
6811 30 Mar 15 nicklas 596           <para>
6811 30 Mar 15 nicklas 597             This option is only enabled if a subtype or raw data type has been selected for
6811 30 Mar 15 nicklas 598             the list. It adds an extra "virtual" synchronization filter
6811 30 Mar 15 nicklas 599             that only matches items of the specified type.
6811 30 Mar 15 nicklas 600           </para>
6811 30 Mar 15 nicklas 601         </listitem>
6811 30 Mar 15 nicklas 602       </varlistentry>
6929 05 Jun 15 nicklas 603       <varlistentry>
6929 05 Jun 15 nicklas 604         <term><guilabel>Depending lists</guilabel></term>
6929 05 Jun 15 nicklas 605         <listitem>
6929 05 Jun 15 nicklas 606           <para>
6929 05 Jun 15 nicklas 607             If the synchronization filters for this list uses other items lists
6929 05 Jun 15 nicklas 608             which are also using syncronization filters those lists are shown here.
6929 05 Jun 15 nicklas 609             A quick check is made for each list to see if it appears to be in sync or 
6929 05 Jun 15 nicklas 610             not. The selected lists are synchronized before the current item
6929 05 Jun 15 nicklas 611             list is synchronized.
6929 05 Jun 15 nicklas 612           </para>
6929 05 Jun 15 nicklas 613         </listitem>
6929 05 Jun 15 nicklas 614       </varlistentry>
6811 30 Mar 15 nicklas 615       </variablelist>
6811 30 Mar 15 nicklas 616   
6811 30 Mar 15 nicklas 617       <para>
6811 30 Mar 15 nicklas 618         Click on &gbOk; to start the synchronization process. It is started in the
6811 30 Mar 15 nicklas 619         background and a progress bar will show the ongoing progress. Note that
6811 30 Mar 15 nicklas 620         closing the progress window will not abort the synchronization.
6811 30 Mar 15 nicklas 621       </para>  
6811 30 Mar 15 nicklas 622       
6811 30 Mar 15 nicklas 623       <seeother>
6811 30 Mar 15 nicklas 624         <other external_id="itemlist.syncfilters">Synchronization filters overview</other>
6811 30 Mar 15 nicklas 625         <other external_id="itemlist.view.properties">Item lists overview</other>
6811 30 Mar 15 nicklas 626       </seeother>
6811 30 Mar 15 nicklas 627     </helptext>
6811 30 Mar 15 nicklas 628     
6811 30 Mar 15 nicklas 629   </sect1>
6811 30 Mar 15 nicklas 630   
6811 30 Mar 15 nicklas 631   
6811 30 Mar 15 nicklas 632 </chapter>