[kepler-dev] PIW workflow

Nicholas Haasch nhaasch at gmail.com
Mon Nov 6 15:01:48 PST 2006


Attached is a newer version.  I found it at SPA's site:
http://www-casc.llnl.gov/sdm/download.php

It may still only work with an older version of ptolemy.  At SPA's site they
provide a Java Web Start to run it.

Nick

On 11/6/06, Bertram Ludaescher <ludaesch at ucdavis.edu> wrote:
>
>
> Thanks Dan for the quick reply!
>
> Anybody else knows of the latest PIW whereabouts? (Maybe a functional
> fragment of it?)
>
> Bertram
>
> >>> On Mon, 06 Nov 2006 13:34:40 -0800
> >>> Dan Higgins <higgins at nceas.ucsb.edu> wrote:
> DH>
> DH> Hi Alex,
> DH> Attached is the PIW.xml workflow that is still in the
> DH> $Kepler/workflows/spa/PIW/ directory of the Kepler checkout from CVS.
> DH> However, I think it is now out-of-date and does not function
> correctly.
> DH> Note that the workflows directory was not included in the last
> installer
> DH> version because a number of workflows there no longer operate
> correctly.
> DH>
> DH> Dan Higgins
> DH> NCEAS
> DH>
> DH> ----
> DH>
> DH> Alex Chen wrote:
> >> Hi,
> >>
> >> Does anyone know where or how to obtain a XML copy of the PIW workflow,
> >> which were used to exemplified in many presentations. Thanks!
> >>
> >> Alex Chen
> >>
> >>
> ------------------------------------------------------------------------
> >>
> >> _______________________________________________
> >> Kepler-dev mailing list
> >> Kepler-dev at ecoinformatics.org
> >>
> http://mercury.nceas.ucsb.edu/ecoinformatics/mailman/listinfo/kepler-dev
> >>
> DH>
> DH>
> DH> --
> DH> *******************************************************************
> DH> Dan Higgins                                  higgins at nceas.ucsb.edu
> DH> http://www.nceas.ucsb.edu/    Ph: 805-893-5127
> DH> National Center for Ecological Analysis and Synthesis (NCEAS) Marine
> Science Building - Room 3405
> DH> Santa Barbara, CA 93195
> DH> *******************************************************************
> DH>
> DH> <?xml version="1.0" standalone="no"?>
> DH> <!DOCTYPE entity PUBLIC "-//UC Berkeley//DTD MoML 1//EN"
> DH>     "http://ptolemy.eecs.berkeley.edu/xml/dtd/MoML_1.dtd">
> DH> <entity name="PIW" class="ptolemy.actor.TypedCompositeActor">
> DH>     <property name="_createdBy" class="
> ptolemy.kernel.attributes.VersionAttribute" value="4.0.1">
> DH>     </property>
> DH>     <property name="_vergilSize" class="
> ptolemy.actor.gui.SizeAttribute" value="[794, 756]">
> DH>     </property>
> DH>     <property name="_vergilLocation" class="
> ptolemy.actor.gui.LocationAttribute" value="[-4, 10]">
> DH>     </property>
> DH>     <property name="PN Director" class="
> ptolemy.domains.pn.kernel.PNDirector">
> DH>         <property name="initialQueueCapacity" class="
> ptolemy.data.expr.Parameter" value="1">
> DH>         </property>
> DH>         <property name="maximumQueueCapacity" class="
> ptolemy.data.expr.Parameter" value="65536">
> DH>         </property>
> DH>         <property name="_location" class="ptolemy.kernel.util.Location"
> value="65.0, 35.0">
> DH>         </property>
> DH>     </property>
> DH>     <property name="annotation" class="ptolemy.kernel.util.Attribute">
> DH>         <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>         </property>
> DH>         <property name="_iconDescription" class="
> ptolemy.kernel.util.SingletonConfigurableAttribute">
> DH>             <configure><svg><text x="20" y="20" style="font-size:13;
> font-family:SansSerif; fill:blue">Promoter identification workflow (PIW)
> aims at constructing
> DH> models of transcription factor binding sites to identify
> DH> co-regulated genes, starting from microarray data.
> DH>
> DH> Right click and Configure to modify the gene Accession
> DH> Numbers in quotes separated by commas to be
> investigated.</text></svg></configure>
> DH>         </property>
> DH>         <property name="_smallIconDescription" class="
> ptolemy.kernel.util.SingletonConfigurableAttribute">
> DH>             <configure>
> DH>       <svg>
> DH>         <text x="20" style="font-size:14; font-family:SansSerif;
> fill:blue" y="20">-A-</text>
> DH>       </svg>
> DH>     </configure>
> DH>         </property>
> DH>         <property name="_controllerFactory" class="
> ptolemy.vergil.basic.NodeControllerFactory">
> DH>         </property>
> DH>         <property name="_editorFactory" class="
> ptolemy.vergil.toolbox.AnnotationEditorFactory">
> DH>         </property>
> DH>         <property name="_location" class="ptolemy.kernel.util.Location"
> value="130.0, 10.0">
> DH>         </property>
> DH>     </property>
> DH>     <property name="annotation4" class="ptolemy.kernel.util.Attribute
> ">
> DH>         <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>         </property>
> DH>         <property name="_iconDescription" class="
> ptolemy.kernel.util.SingletonConfigurableAttribute">
> DH>             <configure><svg><text x="20" y="20" style="font-size:10;
> font-family:SansSerif; fill:blue">This actor executes
> DH> "Gene Sequence Processing"
> DH> for each gene entered in
> DH> "GeneAccessionNumber List".</text></svg></configure>
> DH>         </property>
> DH>         <property name="_smallIconDescription" class="
> ptolemy.kernel.util.SingletonConfigurableAttribute">
> DH>             <configure>
> DH>       <svg>
> DH>         <text x="20" style="font-size:14; font-family:SansSerif;
> fill:blue" y="20">-A-</text>
> DH>       </svg>
> DH>     </configure>
> DH>         </property>
> DH>         <property name="_controllerFactory" class="
> ptolemy.vergil.basic.NodeControllerFactory">
> DH>         </property>
> DH>         <property name="_editorFactory" class="
> ptolemy.vergil.toolbox.AnnotationEditorFactory">
> DH>         </property>
> DH>         <property name="_location" class="ptolemy.kernel.util.Location"
> value="[210.0, 415.0]">
> DH>         </property>
> DH>     </property>
> DH>     <property name="AccessNumbers" class="ptolemy.data.expr.Parameter"
> value="{&quot;AK091640&quot;, &quot;CR590203&quot;, &quot;BC011418&quot;,
> &quot;NM_001924&quot;, &quot;NM_152288&quot;, &quot;BC026066&quot;,
> &quot;NM_016399&quot;, &quot;H48511&quot;, &quot;NM_004881&quot;,
> &quot;AK024064&quot;, &quot;NM_182649&quot;, &quot;BC000196&quot;,
> &quot;NM_001613&quot;, &quot;NM_014398&quot;, &quot;CR590997&quot;,
> &quot;AA083478&quot;, &quot;AF368463&quot;}">
> DH>     </property>
> DH>     <property name="annotation2" class="ptolemy.kernel.util.Attribute
> ">
> DH>         <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>         </property>
> DH>         <property name="_iconDescription" class="
> ptolemy.kernel.util.SingletonConfigurableAttribute">
> DH>             <configure><svg><text x="20" y="20" style="font-size:10;
> font-family:SansSerif; fill:blue">Authors:
> DH>    Matt Coleman from Lawrence Livermore National Laboratory
> DH>    Ilkay Altintas, Zhengang Cheng, Xiaowen Xin from the SPA
> project</text></svg></configure>
> DH>         </property>
> DH>         <property name="_smallIconDescription" class="
> ptolemy.kernel.util.SingletonConfigurableAttribute">
> DH>             <configure>
> DH>       <svg>
> DH>         <text x="20" style="font-size:14; font-family:SansSerif;
> fill:blue" y="20">-A-</text>
> DH>       </svg>
> DH>     </configure>
> DH>         </property>
> DH>         <property name="_controllerFactory" class="
> ptolemy.vergil.basic.NodeControllerFactory">
> DH>         </property>
> DH>         <property name="_editorFactory" class="
> ptolemy.vergil.toolbox.AnnotationEditorFactory">
> DH>         </property>
> DH>         <property name="_location" class="ptolemy.kernel.util.Location"
> value="[5.0, 690.0]">
> DH>         </property>
> DH>     </property>
> DH>     <property name="_vergilZoomFactor" class="
> ptolemy.data.expr.ExpertParameter" value="1.0">
> DH>     </property>
> DH>     <property name="_vergilCenter" class="
> ptolemy.data.expr.ExpertParameter" value="{397.0, 378.0}">
> DH>     </property>
> DH>     <property name="_windowProperties" class="
> ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={140, 75,
> 1014, 863}, maximized=false}">
> DH>     </property>
> DH>     <property name="Annotation" class="
> ptolemy.vergil.kernel.attributes.TextAttribute">
> DH>         <property name="text" class="
> ptolemy.kernel.util.StringAttribute" value="$Revision: 1.1 $&#10;$Author:
> xin $">
> DH>         </property>
> DH>         <property name="_location" class="ptolemy.kernel.util.Location"
> value="[585.0, 40.0]">
> DH>         </property>
> DH>     </property>
> DH>     <property name="debug_blast" class="ptolemy.data.expr.Parameter"
> value="false">
> DH>     </property>
> DH>     <property name="dir_log" class="ptolemy.data.expr.Parameter"
> value="HOME + &quot;/spa/PIW&quot;">
> DH>         <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>         </property>
> DH>         <property name="_icon" class="ptolemy.vergil.icon.ValueIcon">
> DH>             <property name="_color" class="
> ptolemy.actor.gui.ColorAttribute" value="{0.0, 0.0, 1.0, 1.0}">
> DH>             </property>
> DH>         </property>
> DH>         <property name="_smallIconDescription" class="
> ptolemy.kernel.util.SingletonConfigurableAttribute">
> DH>             <configure>
> DH>       <svg>
> DH>         <text x="20" style="font-size:14; font-family:SansSerif;
> fill:blue" y="20">-P-</text>
> DH>       </svg>
> DH>     </configure>
> DH>         </property>
> DH>         <property name="_editorFactory" class="
> ptolemy.vergil.toolbox.VisibleParameterEditorFactory">
> DH>         </property>
> DH>         <property name="_location" class="ptolemy.kernel.util.Location"
> value="[580.0, 155.0]">
> DH>         </property>
> DH>     </property>
> DH>     <entity name="Gene Sequence Processing" class="
> ptolemy.actor.TypedCompositeActor">
> DH>         <property name="_location" class="ptolemy.kernel.util.Location"
> value="{305.0, 395.0}">
> DH>         </property>
> DH>         <property name="_windowProperties" class="
> ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={88, 60, 1097,
> 827}, maximized=false}">
> DH>         </property>
> DH>         <property name="_vergilSize" class="
> ptolemy.actor.gui.SizeAttribute" value="[877, 720]">
> DH>         </property>
> DH>         <property name="_vergilZoomFactor" class="
> ptolemy.data.expr.ExpertParameter" value="1.0">
> DH>         </property>
> DH>         <property name="_vergilCenter" class="
> ptolemy.data.expr.ExpertParameter" value="{438.5, 360.0}">
> DH>         </property>
> DH>         <port name="Gene Accession Number" class="
> ptolemy.actor.TypedIOPort">
> DH>             <property name="input"/>
> DH>             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[40.0, 230.0]">
> DH>             </property>
> DH>             <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="WEST">
> DH>                 <property name="style" class="
> ptolemy.actor.gui.style.LineStyle">
> DH>                 </property>
> DH>             </property>
> DH>         </port>
> DH>         <port name="Fasta Output" class="ptolemy.actor.TypedIOPort">
> DH>             <property name="output"/>
> DH>             <property name="_type" class="ptolemy.actor.TypeAttribute"
> value="string">
> DH>             </property>
> DH>             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[750.0, 240.0]">
> DH>             </property>
> DH>             <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>             </property>
> DH>         </port>
> DH>         <port name="log_blast" class="ptolemy.actor.TypedIOPort">
> DH>             <property name="output"/>
> DH>             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[750.0, 130.0]">
> DH>             </property>
> DH>             <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>             </property>
> DH>         </port>
> DH>         <port name="log_transfac" class="ptolemy.actor.TypedIOPort">
> DH>             <property name="output"/>
> DH>             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[740.0, 445.0]">
> DH>             </property>
> DH>             <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>             </property>
> DH>         </port>
> DH>         <entity name="Display" class="ptolemy.actor.lib.gui.Display">
> DH>             <property name="rowsDisplayed" class="
> ptolemy.data.expr.Parameter" value="10">
> DH>             </property>
> DH>             <property name="columnsDisplayed" class="
> ptolemy.data.expr.Parameter" value="100">
> DH>             </property>
> DH>             <property name="title" class="
> ptolemy.kernel.util.StringAttribute" value="Gene Accession Number and
> Sequence Display">
> DH>             </property>
> DH>             <property name="_windowProperties" class="
> ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={154, 715,
> 1111, 205}, maximized=false}">
> DH>             </property>
> DH>             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[285.0, 385.0]">
> DH>             </property>
> DH>         </entity>
> DH>         <entity name="Process Blast" class="
> workflows.spa.PIW.PIW-ParseBlast">
> DH>             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[450.0, 230.0]">
> DH>             </property>
> DH>         </entity>
> DH>         <entity name="Get Sequence" class="
> ptolemy.actor.TypedCompositeActor">
> DH>             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[175.0, 280.0]">
> DH>             </property>
> DH>             <property name="_windowProperties" class="
> ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={84, 501,
> 1075, 281}, maximized=false}">
> DH>             </property>
> DH>             <property name="_vergilSize" class="
> ptolemy.actor.gui.SizeAttribute" value="[855, 174]">
> DH>             </property>
> DH>             <property name="_vergilZoomFactor" class="
> ptolemy.data.expr.ExpertParameter" value="1.0">
> DH>             </property>
> DH>             <property name="_vergilCenter" class="
> ptolemy.data.expr.ExpertParameter" value="{427.5, 87.0}">
> DH>             </property>
> DH>             <port name="AccessionNumber" class="
> ptolemy.actor.TypedIOPort">
> DH>                 <property name="input"/>
> DH>                 <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[50.0, 75.0]">
> DH>                 </property>
> DH>             </port>
> DH>             <port name="Sequence" class="ptolemy.actor.TypedIOPort">
> DH>                 <property name="output"/>
> DH>                 <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[760.0, 85.0]">
> DH>                 </property>
> DH>                 <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>             </port>
> DH>             <entity name="Expression" class="
> ptolemy.actor.lib.Expression">
> DH>                 <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="input.substring(0, min(
> input.length(), 300))">
> DH>                 </property>
> DH>                 <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                     <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                     </property>
> DH>                     <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[590.0, 85.0]">
> DH>                 </property>
> DH>                 <port name="input" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="WebService" class="org.sdm.spa.WebService">
> DH>                 <property name="wsdlUrl" class="
> ptolemy.data.expr.StringParameter" value="
> http://sdm2.csc.ncsu.edu:8080/axis/services/urn:spa.service.Genbank?wsdl">
> DH>                 </property>
> DH>                 <property name="methodName" class="
> ptolemy.data.expr.StringParameter" value="service">
> DH>                 </property>
> DH>                 <property name="userName" class="
> ptolemy.data.expr.StringParameter" value="user1">
> DH>                 </property>
> DH>                 <property name="password" class="
> ptolemy.data.expr.StringParameter" value="pass1">
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[170.0, 50.0]">
> DH>                 </property>
> DH>                 <port name="in0" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_showName" class="
> ptolemy.kernel.util.Attribute">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="serviceReturn" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_showName" class="
> ptolemy.kernel.util.Attribute">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <relation name="relation2" class="
> ptolemy.actor.TypedIORelation">
> DH>             </relation>
> DH>             <relation name="relation" class="
> ptolemy.actor.TypedIORelation">
> DH>             </relation>
> DH>             <relation name="relation3" class="
> ptolemy.actor.TypedIORelation">
> DH>             </relation>
> DH>             <link port="AccessionNumber" relation="relation"/>
> DH>             <link port="Sequence" relation="relation2"/>
> DH>             <link port="Expression.output" relation="relation2"/>
> DH>             <link port="Expression.input" relation="relation3"/>
> DH>             <link port="WebService.in0" relation="relation"/>
> DH>             <link port="WebService.serviceReturn"
> relation="relation3"/>
> DH>         </entity>
> DH>         <entity name="Filter" class="ptolemy.actor.TypedCompositeActor
> ">
> DH>             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[380.0, 445.0]">
> DH>             </property>
> DH>             <property name="_windowProperties" class="
> ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={-137, 233,
> 1371, 540}, maximized=false}">
> DH>             </property>
> DH>             <property name="_vergilSize" class="
> ptolemy.actor.gui.SizeAttribute" value="[1151, 433]">
> DH>             </property>
> DH>             <property name="_vergilZoomFactor" class="
> ptolemy.data.expr.ExpertParameter" value="1.0">
> DH>             </property>
> DH>             <property name="_vergilCenter" class="
> ptolemy.data.expr.ExpertParameter" value="{575.5, 216.5}">
> DH>             </property>
> DH>             <port name="HomologRecord" class="
> ptolemy.actor.TypedIOPort">
> DH>                 <property name="input"/>
> DH>                 <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[35.0, 70.0]">
> DH>                 </property>
> DH>             </port>
> DH>             <port name="PassRecord" class="ptolemy.actor.TypedIOPort">
> DH>                 <property name="output"/>
> DH>                 <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[1025.0, 50.0]">
> DH>                 </property>
> DH>                 <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>             </port>
> DH>             <port name="FailRecord" class="ptolemy.actor.TypedIOPort">
> DH>                 <property name="output"/>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[1024.3369140625, 160.0]">
> DH>                 </property>
> DH>             </port>
> DH>             <entity name="Expression" class="
> ptolemy.actor.lib.Expression">
> DH>                 <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="0">
> DH>                 </property>
> DH>                 <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                     <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                     </property>
> DH>                     <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="235.0, 385.0">
> DH>                 </property>
> DH>                 <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>                 <port name="input" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="RecordDisassembler" class="
> ptolemy.actor.lib.RecordDisassembler">
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="135.0, 345.0">
> DH>                 </property>
> DH>                 <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>                 <port name="input" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="{index=int}">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="index" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                     </property>
> DH>                     <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="" class="ptolemy.actor.lib.Expression">
> DH>                 <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="2">
> DH>                     <property name="style" class="
> ptolemy.actor.gui.style.LineStyle">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                     <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                     </property>
> DH>                     <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="380.0, 290.0">
> DH>                 </property>
> DH>                 <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>                 <port name="output" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                     </property>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="WEST">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="input" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="EAST">
> DH>                     </property>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="string">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="Seen two" class="
> ptolemy.actor.lib.logic.Comparator">
> DH>                 <property name="comparison" class="
> ptolemy.kernel.util.StringAttribute" value="&lt;">
> DH>                     <property name="style" class="
> ptolemy.actor.gui.style.ChoiceStyle">
> DH>                         <property name="gt" class="
> ptolemy.kernel.util.StringAttribute" value="&gt;">
> DH>                         </property>
> DH>                         <property name="ge" class="
> ptolemy.kernel.util.StringAttribute" value="&gt;=">
> DH>                         </property>
> DH>                         <property name="lt" class="
> ptolemy.kernel.util.StringAttribute" value="&lt;">
> DH>                         </property>
> DH>                         <property name="le" class="
> ptolemy.kernel.util.StringAttribute" value="&lt;=">
> DH>                         </property>
> DH>                         <property name="eq" class="
> ptolemy.kernel.util.StringAttribute" value="==">
> DH>                         </property>
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="tolerance" class="
> ptolemy.data.expr.Parameter" value="0.0">
> DH>                 </property>
> DH>                 <property name="_icon" class="
> ptolemy.vergil.icon.AttributeValueIcon">
> DH>                     <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="comparison">
> DH>                     </property>
> DH>                     <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="6">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[295.0, 280.0]">
> DH>                 </property>
> DH>                 <port name="left" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="EAST">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="right" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="EAST">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="output" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="WEST">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="Comparator" class="
> ptolemy.actor.lib.logic.Comparator">
> DH>                 <property name="comparison" class="
> ptolemy.kernel.util.StringAttribute" value="==">
> DH>                     <property name="style" class="
> ptolemy.actor.gui.style.ChoiceStyle">
> DH>                         <property name="gt" class="
> ptolemy.kernel.util.StringAttribute" value="&gt;">
> DH>                         </property>
> DH>                         <property name="ge" class="
> ptolemy.kernel.util.StringAttribute" value="&gt;=">
> DH>                         </property>
> DH>                         <property name="lt" class="
> ptolemy.kernel.util.StringAttribute" value="&lt;">
> DH>                         </property>
> DH>                         <property name="le" class="
> ptolemy.kernel.util.StringAttribute" value="&lt;=">
> DH>                         </property>
> DH>                         <property name="eq" class="
> ptolemy.kernel.util.StringAttribute" value="==">
> DH>                         </property>
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="tolerance" class="
> ptolemy.data.expr.Parameter" value="0.0">
> DH>                 </property>
> DH>                 <property name="_icon" class="
> ptolemy.vergil.icon.AttributeValueIcon">
> DH>                     <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="comparison">
> DH>                     </property>
> DH>                     <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="6">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="315.0, 375.0">
> DH>                 </property>
> DH>             </entity>
> DH>             <entity name="BooleanSwitch2" class="
> ptolemy.actor.lib.BooleanSwitch">
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[210.0, 70.0]">
> DH>                 </property>
> DH>                 <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>                 <port name="input" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="control" class="ptolemy.actor.TypedIOPort
> ">
> DH>                     <property name="input"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="trueOutput" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                     </property>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="falseOutput" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                     </property>
> DH>                     <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                     </property>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="BooleanSwitch3" class="
> ptolemy.actor.lib.BooleanSwitch">
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[730.0, 50.0]">
> DH>                 </property>
> DH>                 <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>                 <port name="control" class="ptolemy.actor.TypedIOPort
> ">
> DH>                     <property name="input"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="trueOutput" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="falseOutput" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                     </property>
> DH>                     <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="Count" class="
> ptolemy.actor.TypedCompositeActor">
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="660.0, 280.0">
> DH>                 </property>
> DH>                 <port name="input" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="50.0, 120.0">
> DH>                     </property>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="EAST">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="output" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="425.0, 165.0">
> DH>                     </property>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="WEST">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="reset" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="50.0, 165.0">
> DH>                     </property>
> DH>                     <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                     </property>
> DH>                 </port>
> DH>                 <entity name="Expression" class="
> ptolemy.actor.lib.Expression">
> DH>                     <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="reset ? 0 : input + previous">
> DH>                     </property>
> DH>                     <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                         <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                         </property>
> DH>                         <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                         </property>
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="255.0, 165.0">
> DH>                     </property>
> DH>                     <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                         <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="WEST">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="reset" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                     </port>
> DH>                     <port name="previous" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                     </port>
> DH>                 </entity>
> DH>                 <entity name="SampleDelay" class="
> ptolemy.domains.sdf.lib.SampleDelay">
> DH>                     <property name="initialOutputs" class="
> ptolemy.data.expr.Parameter" value="{0}">
> DH>                     </property>
> DH>                     <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                         <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="initialOutputs">
> DH>                         </property>
> DH>                         <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="20">
> DH>                         </property>
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="115.0, 120.0">
> DH>                     </property>
> DH>                 </entity>
> DH>                 <entity name="SampleDelay2" class="
> ptolemy.domains.sdf.lib.SampleDelay">
> DH>                     <property name="initialOutputs" class="
> ptolemy.data.expr.Parameter" value="{0}">
> DH>                     </property>
> DH>                     <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                         <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="initialOutputs">
> DH>                         </property>
> DH>                         <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="20">
> DH>                         </property>
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="295.0, 245.0">
> DH>                     </property>
> DH>                     <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                         <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="EAST">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="output" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="output"/>
> DH>                         <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="WEST">
> DH>                         </property>
> DH>                     </port>
> DH>                 </entity>
> DH>                 <relation name="relation" class="
> ptolemy.actor.TypedIORelation">
> DH>                     <vertex name="vertex1" value="380.0, 165.0">
> DH>                     </vertex>
> DH>                 </relation>
> DH>                 <relation name="relation2" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <relation name="relation3" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <relation name="relation4" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <relation name="relation5" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <link port="input" relation="relation3"/>
> DH>                 <link port="output" relation="relation"/>
> DH>                 <link port="reset" relation="relation5"/>
> DH>                 <link port="Expression.output" relation="relation"/>
> DH>                 <link port="Expression.input" relation="relation4"/>
> DH>                 <link port="Expression.reset" relation="relation5"/>
> DH>                 <link port="Expression.previous"
> relation="relation2"/>
> DH>                 <link port="SampleDelay.input" relation="relation3"/>
> DH>                 <link port="SampleDelay.output" relation="relation4"/>
> DH>                 <link port="SampleDelay2.input" relation="relation"/>
> DH>                 <link port="SampleDelay2.output"
> relation="relation2"/>
> DH>             </entity>
> DH>             <entity name="CheckSegmentLength" class="
> ptolemy.actor.TypedCompositeActor">
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[595.0, 60.0]">
> DH>                 </property>
> DH>                 <property name="_windowProperties" class="
> ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={190, 353,
> 939, 457}, maximized=false}">
> DH>                 </property>
> DH>                 <property name="_vergilSize" class="
> ptolemy.actor.gui.SizeAttribute" value="[719, 210]">
> DH>                 </property>
> DH>                 <property name="_vergilZoomFactor" class="
> ptolemy.data.expr.ExpertParameter" value="1.0">
> DH>                 </property>
> DH>                 <property name="_vergilCenter" class="
> ptolemy.data.expr.ExpertParameter" value="{359.5, 105.0}">
> DH>                 </property>
> DH>                 <port name="HomologRecord" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="{35.0, 40.0}">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="OutRecord" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[632.3341369628906, 52.009765625]">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="Pass" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[632.3341369628906, 102.009765625]">
> DH>                     </property>
> DH>                 </port>
> DH>                 <entity name="Length" class="
> ptolemy.actor.lib.Expression">
> DH>                     <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="input.length()">
> DH>                         <property name="style" class="
> ptolemy.actor.gui.style.LineStyle">
> DH>                         </property>
> DH>                     </property>
> DH>                     <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                         <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                         </property>
> DH>                         <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                         </property>
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[390.99999237060547, 92.0]">
> DH>                     </property>
> DH>                     <port name="output" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="output"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="string">
> DH>                         </property>
> DH>                         <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                         </property>
> DH>                     </port>
> DH>                 </entity>
> DH>                 <entity name="Minimum Length" class="
> ptolemy.actor.lib.Expression">
> DH>                     <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="abs(End - Start) + 500">
> DH>                         <property name="style" class="
> ptolemy.actor.gui.style.LineStyle">
> DH>                         </property>
> DH>                     </property>
> DH>                     <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                         <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                         </property>
> DH>                         <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                         </property>
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[345.99999237060547, 157.0]">
> DH>                     </property>
> DH>                     <port name="Start" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                         <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="End" class="ptolemy.actor.TypedIOPort
> ">
> DH>                         <property name="input"/>
> DH>                         <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                         </property>
> DH>                     </port>
> DH>                 </entity>
> DH>                 <entity name="RetrieveSequenceSegment" class="
> ptolemy.actor.TypedCompositeActor">
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[175.0, 90.0]">
> DH>                     </property>
> DH>                     <property name="_windowProperties" class="
> ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={-113, 333,
> 1251, 520}, maximized=false}">
> DH>                     </property>
> DH>                     <property name="_vergilSize" class="
> ptolemy.actor.gui.SizeAttribute" value="[1031, 413]">
> DH>                     </property>
> DH>                     <property name="_vergilZoomFactor" class="
> ptolemy.data.expr.ExpertParameter" value="1.0">
> DH>                     </property>
> DH>                     <property name="_vergilCenter" class="
> ptolemy.data.expr.ExpertParameter" value="{515.5, 206.5}">
> DH>                     </property>
> DH>                     <port name="GeneRecord" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                         <property name="_location" class="
> ptolemy.kernel.util.Location" value="30.0, 245.0">
> DH>                         </property>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="Sequence" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="output"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                         </property>
> DH>                         <property name="_location" class="
> ptolemy.kernel.util.Location" value="[960.0, 305.0]">
> DH>                         </property>
> DH>                     </port>
> DH>                     <entity name="subtract" class="
> ptolemy.actor.lib.Expression">
> DH>                         <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="positive ? input - 1501 :
> input - 1">
> DH>                             <property name="style" class="
> ptolemy.actor.gui.style.LineStyle">
> DH>                             </property>
> DH>                         </property>
> DH>                         <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                             <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                             </property>
> DH>                             <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                             </property>
> DH>                         </property>
> DH>                         <property name="_location" class="
> ptolemy.kernel.util.Location" value="[297.0, 205.0]">
> DH>                         </property>
> DH>                         <port name="output" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="output"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                             </property>
> DH>                             <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="EAST">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="WEST">
> DH>                             </property>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="positive" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                         </port>
> DH>                     </entity>
> DH>                     <entity name="Remove Noncontigs" class="
> ptolemy.actor.lib.Expression">
> DH>                         <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="input.replaceAll(&quot;.*[N,n]{11,}&quot;,
> &quot;&quot;)">
> DH>                             <property name="style" class="
> ptolemy.actor.gui.style.LineStyle">
> DH>                             </property>
> DH>                         </property>
> DH>                         <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                             <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                             </property>
> DH>                             <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                             </property>
> DH>                         </property>
> DH>                         <property name="_location" class="
> ptolemy.kernel.util.Location" value="{825.0, 305.0}">
> DH>                         </property>
> DH>                         <port name="output" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="output"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="string">
> DH>                             </property>
> DH>                             <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="EAST">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="WEST">
> DH>                             </property>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="string">
> DH>                             </property>
> DH>                         </port>
> DH>                     </entity>
> DH>                     <entity name="WebService" class="
> org.sdm.spa.WebService">
> DH>                         <property name="wsdlUrl" class="
> ptolemy.data.expr.StringParameter" value="
> http://sdm2.csc.ncsu.edu:8080/axis/services/urn:spa.service.Genbank?wsdl">
> DH>                         </property>
> DH>                         <property name="methodName" class="
> ptolemy.data.expr.StringParameter" value="service">
> DH>                         </property>
> DH>                         <property name="userName" class="
> ptolemy.data.expr.StringParameter" value="user1">
> DH>                         </property>
> DH>                         <property name="password" class="
> ptolemy.data.expr.StringParameter" value="pass1">
> DH>                         </property>
> DH>                         <property name="hasTrigger" class="
> ptolemy.data.expr.Parameter" value="false">
> DH>                         </property>
> DH>                         <property name="_location" class="
> ptolemy.kernel.util.Location" value="[165.0, 110.0]">
> DH>                         </property>
> DH>                         <port name="in0" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_showName" class="
> ptolemy.kernel.util.Attribute">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="serviceReturn" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="output"/>
> DH>                             <property name="_showName" class="
> ptolemy.kernel.util.Attribute">
> DH>                             </property>
> DH>                         </port>
> DH>                     </entity>
> DH>                     <entity name="RecordDisassembler" class="
> ptolemy.actor.lib.RecordDisassembler">
> DH>                         <property name="_location" class="
> ptolemy.kernel.util.Location" value="[102.0, 225.0]">
> DH>                         </property>
> DH>                         <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                         </property>
> DH>                         <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="GeneID" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="output"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                             <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="Start" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="output"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                             <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="End" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="output"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                             <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="QueryStart" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="output"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                             <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="QueryEnd" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="output"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                             <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                             </property>
> DH>                         </port>
> DH>                     </entity>
> DH>                     <entity name="Comparator" class="
> ptolemy.actor.lib.logic.Comparator">
> DH>                         <property name="comparison" class="
> ptolemy.kernel.util.StringAttribute" value="&lt;">
> DH>                             <property name="style" class="
> ptolemy.actor.gui.style.ChoiceStyle">
> DH>                                 <property name="gt" class="
> ptolemy.kernel.util.StringAttribute" value="&gt;">
> DH>                                 </property>
> DH>                                 <property name="ge" class="
> ptolemy.kernel.util.StringAttribute" value="&gt;=">
> DH>                                 </property>
> DH>                                 <property name="lt" class="
> ptolemy.kernel.util.StringAttribute" value="&lt;">
> DH>                                 </property>
> DH>                                 <property name="le" class="
> ptolemy.kernel.util.StringAttribute" value="&lt;=">
> DH>                                 </property>
> DH>                                 <property name="eq" class="
> ptolemy.kernel.util.StringAttribute" value="==">
> DH>                                 </property>
> DH>                             </property>
> DH>                         </property>
> DH>                         <property name="_icon" class="
> ptolemy.vergil.icon.AttributeValueIcon">
> DH>                             <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="comparison">
> DH>                             </property>
> DH>                         </property>
> DH>                         <property name="_location" class="
> ptolemy.kernel.util.Location" value="[172.0, 380.0]">
> DH>                         </property>
> DH>                     </entity>
> DH>                     <entity name="add" class="
> ptolemy.actor.lib.Expression">
> DH>                         <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="positive ? input : input +
> 1500">
> DH>                             <property name="style" class="
> ptolemy.actor.gui.style.LineStyle">
> DH>                             </property>
> DH>                         </property>
> DH>                         <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                             <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                             </property>
> DH>                             <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                             </property>
> DH>                         </property>
> DH>                         <property name="_location" class="
> ptolemy.kernel.util.Location" value="[337.0, 255.0]">
> DH>                         </property>
> DH>                         <port name="output" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="output"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                             </property>
> DH>                             <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="EAST">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="WEST">
> DH>                             </property>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="positive" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                         </port>
> DH>                     </entity>
> DH>                     <entity name="ReverseComplement" class="
> ptolemy.actor.TypedCompositeActor">
> DH>                         <property name="_location" class="
> ptolemy.kernel.util.Location" value="[650.0, 305.0]">
> DH>                         </property>
> DH>                         <property name="Annotation" class="
> ptolemy.vergil.kernel.attributes.TextAttribute">
> DH>                             <property name="text" class="
> ptolemy.kernel.util.StringAttribute" value="Reverse the sequence and
> complement it.&#10;A &lt;-&gt; T&#10;G &lt;-&gt; C">
> DH>                             </property>
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[15.0, 20.0]">
> DH>                             </property>
> DH>                         </property>
> DH>                         <property name="_windowProperties" class="
> ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={286, 317,
> 940, 515}, maximized=false}">
> DH>                         </property>
> DH>                         <property name="_vergilSize" class="
> ptolemy.actor.gui.SizeAttribute" value="[726, 407]">
> DH>                         </property>
> DH>                         <property name="_vergilZoomFactor" class="
> ptolemy.data.expr.ExpertParameter" value="1.0">
> DH>                         </property>
> DH>                         <property name="_vergilCenter" class="
> ptolemy.data.expr.ExpertParameter" value="{363.0, 203.5}">
> DH>                         </property>
> DH>                         <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[30.0, 135.0]">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="output" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="output"/>
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[645.0, 125.0]">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="positive" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[30.0, 195.0]">
> DH>                             </property>
> DH>                         </port>
> DH>                         <entity name="StringReverse" class="
> org.sdm.spa.StringReverse">
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[220.0, 190.0]">
> DH>                             </property>
> DH>                         </entity>
> DH>                         <entity name="BooleanSwitch" class="
> ptolemy.actor.lib.BooleanSwitch">
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[130.0, 135.0]">
> DH>                             </property>
> DH>                             <port name="control" class="
> ptolemy.actor.TypedIOPort">
> DH>                                 <property name="input"/>
> DH>                                 <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                                 </property>
> DH>                             </port>
> DH>                         </entity>
> DH>                         <entity name="Expression" class="
> ptolemy.actor.lib.Expression">
> DH>                             <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="input.replaceAll(&quot;A&quot;,
> &quot;B&quot;)">
> DH>                             </property>
> DH>                             <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                                 <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                                 </property>
> DH>                                 <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                                 </property>
> DH>                             </property>
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[132.33467864990234,
> 274.0272979736328]">
> DH>                             </property>
> DH>                             <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                                 <property name="input"/>
> DH>                                 <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                                 </property>
> DH>                             </port>
> DH>                         </entity>
> DH>                         <entity name="Expression2" class="
> ptolemy.actor.lib.Expression">
> DH>                             <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="input.replaceAll(&quot;T&quot;,
> &quot;A&quot;)">
> DH>                             </property>
> DH>                             <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                                 <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                                 </property>
> DH>                                 <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                                 </property>
> DH>                             </property>
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[312.33467864990234,
> 274.0272979736328]">
> DH>                             </property>
> DH>                             <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                                 <property name="input"/>
> DH>                                 <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                                 </property>
> DH>                             </port>
> DH>                         </entity>
> DH>                         <entity name="Expression3" class="
> ptolemy.actor.lib.Expression">
> DH>                             <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="input.replaceAll(&quot;B&quot;,
> &quot;T&quot;)">
> DH>                             </property>
> DH>                             <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                                 <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                                 </property>
> DH>                                 <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                                 </property>
> DH>                             </property>
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[492.33467864990234,
> 274.0272979736328]">
> DH>                             </property>
> DH>                             <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                                 <property name="input"/>
> DH>                                 <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                                 </property>
> DH>                             </port>
> DH>                         </entity>
> DH>                         <entity name="Expression4" class="
> ptolemy.actor.lib.Expression">
> DH>                             <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="input.replaceAll(&quot;B&quot;,
> &quot;C&quot;)">
> DH>                             </property>
> DH>                             <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                                 <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                                 </property>
> DH>                                 <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                                 </property>
> DH>                             </property>
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[492.33467864990234,
> 349.0272979736328]">
> DH>                             </property>
> DH>                             <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                                 <property name="input"/>
> DH>                                 <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                                 </property>
> DH>                             </port>
> DH>                         </entity>
> DH>                         <entity name="Expression5" class="
> ptolemy.actor.lib.Expression">
> DH>                             <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="input.replaceAll(&quot;G&quot;,
> &quot;B&quot;)">
> DH>                             </property>
> DH>                             <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                                 <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                                 </property>
> DH>                                 <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                                 </property>
> DH>                             </property>
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[135.0837631225586, 349.2769775390625
> ]">
> DH>                             </property>
> DH>                             <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                                 <property name="input"/>
> DH>                                 <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                                 </property>
> DH>                             </port>
> DH>                         </entity>
> DH>                         <entity name="Expression6" class="
> ptolemy.actor.lib.Expression">
> DH>                             <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="input.replaceAll(&quot;C&quot;,
> &quot;G&quot;)">
> DH>                             </property>
> DH>                             <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                                 <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                                 </property>
> DH>                                 <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                                 </property>
> DH>                             </property>
> DH>                             <property name="_location" class="
> ptolemy.kernel.util.Location" value="[315.0837631225586, 349.2769775390625
> ]">
> DH>                             </property>
> DH>                             <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                                 <property name="input"/>
> DH>                                 <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                                 </property>
> DH>                             </port>
> DH>                         </entity>
> DH>                         <relation name="relation" class="
> ptolemy.actor.TypedIORelation">
> DH>                         </relation>
> DH>                         <relation name="relation2" class="
> ptolemy.actor.TypedIORelation">
> DH>                         </relation>
> DH>                         <relation name="relation4" class="
> ptolemy.actor.TypedIORelation">
> DH>                         </relation>
> DH>                         <relation name="relation5" class="
> ptolemy.actor.TypedIORelation">
> DH>                             <vertex name="vertex1" value="[600.0,
> 125.0]">
> DH>                             </vertex>
> DH>                         </relation>
> DH>                         <relation name="relation3" class="
> ptolemy.actor.TypedIORelation">
> DH>                         </relation>
> DH>                         <relation name="relation6" class="
> ptolemy.actor.TypedIORelation">
> DH>                         </relation>
> DH>                         <relation name="relation7" class="
> ptolemy.actor.TypedIORelation">
> DH>                         </relation>
> DH>                         <relation name="relation8" class="
> ptolemy.actor.TypedIORelation">
> DH>                         </relation>
> DH>                         <relation name="relation9" class="
> ptolemy.actor.TypedIORelation">
> DH>                         </relation>
> DH>                         <relation name="relation10" class="
> ptolemy.actor.TypedIORelation">
> DH>                         </relation>
> DH>                         <link port="input" relation="relation"/>
> DH>                         <link port="output" relation="relation5"/>
> DH>                         <link port="positive" relation="relation2"/>
> DH>                         <link port="StringReverse.input"
> relation="relation4"/>
> DH>                         <link port="StringReverse.output"
> relation="relation3"/>
> DH>                         <link port="BooleanSwitch.input"
> relation="relation"/>
> DH>                         <link port="BooleanSwitch.control"
> relation="relation2"/>
> DH>                         <link port="BooleanSwitch.trueOutput"
> relation="relation5"/>
> DH>                         <link port="BooleanSwitch.falseOutput"
> relation="relation4"/>
> DH>                         <link port="Expression.output"
> relation="relation6"/>
> DH>                         <link port="Expression.input"
> relation="relation3"/>
> DH>                         <link port="Expression2.output"
> relation="relation7"/>
> DH>                         <link port="Expression2.input"
> relation="relation6"/>
> DH>                         <link port="Expression3.output"
> relation="relation10"/>
> DH>                         <link port="Expression3.input"
> relation="relation7"/>
> DH>                         <link port="Expression4.output"
> relation="relation5"/>
> DH>                         <link port="Expression4.input"
> relation="relation8"/>
> DH>                         <link port="Expression5.output"
> relation="relation9"/>
> DH>                         <link port="Expression5.input"
> relation="relation10"/>
> DH>                         <link port="Expression6.output"
> relation="relation8"/>
> DH>                         <link port="Expression6.input"
> relation="relation9"/>
> DH>                     </entity>
> DH>                     <entity name="Expression" class="
> ptolemy.actor.lib.Expression">
> DH>                         <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="input.substring(max(0, start),
> min(input.length(), end))">
> DH>                         </property>
> DH>                         <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                             <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                             </property>
> DH>                             <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                             </property>
> DH>                         </property>
> DH>                         <property name="_location" class="
> ptolemy.kernel.util.Location" value="[575.0, 145.0]">
> DH>                         </property>
> DH>                         <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="start" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                             <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                             </property>
> DH>                         </port>
> DH>                         <port name="end" class="
> ptolemy.actor.TypedIOPort">
> DH>                             <property name="input"/>
> DH>                             <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                             </property>
> DH>                             <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                             </property>
> DH>                         </port>
> DH>                     </entity>
> DH>                     <relation name="relation3" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation8" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation9" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation10" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation12" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation2" class="
> ptolemy.actor.TypedIORelation">
> DH>                         <vertex name="vertex1" value="[365.0, 315.0]">
> DH>                         </vertex>
> DH>                     </relation>
> DH>                     <relation name="relation" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation6" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation5" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation11" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation13" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation4" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <relation name="relation7" class="
> ptolemy.actor.TypedIORelation">
> DH>                     </relation>
> DH>                     <link port="GeneRecord" relation="relation"/>
> DH>                     <link port="Sequence" relation="relation8"/>
> DH>                     <link port="subtract.output"
> relation="relation5"/>
> DH>                     <link port="subtract.input" relation="relation3"/>
> DH>                     <link port="subtract.positive"
> relation="relation2"/>
> DH>                     <link port="Remove Noncontigs.output"
> relation="relation8"/>
> DH>                     <link port="Remove Noncontigs.input"
> relation="relation6"/>
> DH>                     <link port="WebService.in0" relation="relation4"/>
> DH>                     <link port="WebService.serviceReturn"
> relation="relation7"/>
> DH>                     <link port="RecordDisassembler.input"
> relation="relation"/>
> DH>                     <link port="RecordDisassembler.GeneID"
> relation="relation4"/>
> DH>                     <link port="RecordDisassembler.Start"
> relation="relation3"/>
> DH>                     <link port="RecordDisassembler.End"
> relation="relation12"/>
> DH>                     <link port="RecordDisassembler.QueryStart"
> relation="relation9"/>
> DH>                     <link port="RecordDisassembler.QueryEnd"
> relation="relation10"/>
> DH>                     <link port="Comparator.left"
> relation="relation9"/>
> DH>                     <link port="Comparator.right"
> relation="relation10"/>
> DH>                     <link port="Comparator.output"
> relation="relation2"/>
> DH>                     <link port="add.output" relation="relation11"/>
> DH>                     <link port="add.input" relation="relation12"/>
> DH>                     <link port="add.positive" relation="relation2"/>
> DH>                     <link port="ReverseComplement.input"
> relation="relation13"/>
> DH>                     <link port="ReverseComplement.output"
> relation="relation6"/>
> DH>                     <link port="ReverseComplement.positive"
> relation="relation2"/>
> DH>                     <link port="Expression.output"
> relation="relation13"/>
> DH>                     <link port="Expression.input"
> relation="relation7"/>
> DH>                     <link port="Expression.start"
> relation="relation5"/>
> DH>                     <link port="Expression.end"
> relation="relation11"/>
> DH>                 </entity>
> DH>                 <entity name="Compare Length" class="
> ptolemy.actor.lib.logic.Comparator">
> DH>                     <property name="comparison" class="
> ptolemy.kernel.util.StringAttribute" value="&gt;">
> DH>                         <property name="style" class="
> ptolemy.actor.gui.style.ChoiceStyle">
> DH>                             <property name="gt" class="
> ptolemy.kernel.util.StringAttribute" value="&gt;">
> DH>                             </property>
> DH>                             <property name="ge" class="
> ptolemy.kernel.util.StringAttribute" value="&gt;=">
> DH>                             </property>
> DH>                             <property name="lt" class="
> ptolemy.kernel.util.StringAttribute" value="&lt;">
> DH>                             </property>
> DH>                             <property name="le" class="
> ptolemy.kernel.util.StringAttribute" value="&lt;=">
> DH>                             </property>
> DH>                             <property name="eq" class="
> ptolemy.kernel.util.StringAttribute" value="==">
> DH>                             </property>
> DH>                         </property>
> DH>                     </property>
> DH>                     <property name="tolerance" class="
> ptolemy.data.expr.Parameter" value="0.0">
> DH>                     </property>
> DH>                     <property name="_icon" class="
> ptolemy.vergil.icon.AttributeValueIcon">
> DH>                         <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="comparison">
> DH>                         </property>
> DH>                         <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="6">
> DH>                         </property>
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[500.99999237060547, 102.0]">
> DH>                     </property>
> DH>                     <port name="left" class="ptolemy.actor.TypedIOPort
> ">
> DH>                         <property name="input"/>
> DH>                         <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="right" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                         <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                         </property>
> DH>                     </port>
> DH>                 </entity>
> DH>                 <entity name="RecordDisassembler" class="
> ptolemy.actor.lib.RecordDisassembler">
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[150.99999237060547, 137.0]">
> DH>                     </property>
> DH>                     <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                     </property>
> DH>                     <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="{Start=int,End=int}">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="Start" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="output"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                         </property>
> DH>                         <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="End" class="ptolemy.actor.TypedIOPort
> ">
> DH>                         <property name="output"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                         </property>
> DH>                         <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                         </property>
> DH>                     </port>
> DH>                 </entity>
> DH>                 <entity name="RecordUpdater" class="
> ptolemy.actor.lib.RecordUpdater">
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[330.99999237060547, 32.0]">
> DH>                     </property>
> DH>                     <port name="Sequence" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                     </port>
> DH>                 </entity>
> DH>                 <relation name="relation" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <relation name="relation2" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <relation name="relation3" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <relation name="relation4" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <relation name="relation5" class="
> ptolemy.actor.TypedIORelation">
> DH>                     <vertex name="vertex1" value="[235.99999237060547,
> 92.0]">
> DH>                     </vertex>
> DH>                 </relation>
> DH>                 <relation name="relation6" class="
> ptolemy.actor.TypedIORelation">
> DH>                     <vertex name="vertex1" value="[120.99999237060547,
> 42.0]">
> DH>                     </vertex>
> DH>                 </relation>
> DH>                 <relation name="relation7" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <relation name="relation8" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <link port="HomologRecord" relation="relation6"/>
> DH>                 <link port="OutRecord" relation="relation8"/>
> DH>                 <link port="Pass" relation="relation7"/>
> DH>                 <link port="Length.output" relation="relation4"/>
> DH>                 <link port="Length.input" relation="relation5"/>
> DH>                 <link port="Minimum Length.output"
> relation="relation3"/>
> DH>                 <link port="Minimum Length.Start"
> relation="relation"/>
> DH>                 <link port="Minimum Length.End" relation="relation2"/>
> DH>                 <link port="RetrieveSequenceSegment.GeneRecord"
> relation="relation6"/>
> DH>                 <link port="RetrieveSequenceSegment.Sequence"
> relation="relation5"/>
> DH>                 <link port="Compare Length.left"
> relation="relation4"/>
> DH>                 <link port="Compare Length.right"
> relation="relation3"/>
> DH>                 <link port="Compare Length.output"
> relation="relation7"/>
> DH>                 <link port="RecordDisassembler.input"
> relation="relation6"/>
> DH>                 <link port="RecordDisassembler.Start"
> relation="relation"/>
> DH>                 <link port="RecordDisassembler.End"
> relation="relation2"/>
> DH>                 <link port="RecordUpdater.output"
> relation="relation8"/>
> DH>                 <link port="RecordUpdater.input"
> relation="relation6"/>
> DH>                 <link port="RecordUpdater.Sequence"
> relation="relation5"/>
> DH>             </entity>
> DH>             <entity name="BooleanSwitch" class="
> ptolemy.actor.lib.BooleanSwitch">
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[455.0, 60.0]">
> DH>                 </property>
> DH>                 <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>                 <port name="control" class="ptolemy.actor.TypedIOPort
> ">
> DH>                     <property name="input"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="trueOutput" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="falseOutput" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                     </property>
> DH>                     <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="CheckStartIndex" class="
> ptolemy.actor.TypedCompositeActor">
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[350.0, 70.0]">
> DH>                 </property>
> DH>                 <property name="_windowProperties" class="
> ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={140, 413,
> 905, 457}, maximized=false}">
> DH>                 </property>
> DH>                 <property name="_vergilSize" class="
> ptolemy.actor.gui.SizeAttribute" value="[685, 348]">
> DH>                 </property>
> DH>                 <property name="_vergilZoomFactor" class="
> ptolemy.data.expr.ExpertParameter" value="1.0">
> DH>                 </property>
> DH>                 <property name="_vergilCenter" class="
> ptolemy.data.expr.ExpertParameter" value="{342.5, 174.0}">
> DH>                 </property>
> DH>                 <port name="HomologRecord" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[40.0, 185.0]">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="OutRecord" class="
> ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[570.0, 185.0]">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="Pass" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[570.0, 240.0]">
> DH>                     </property>
> DH>                 </port>
> DH>                 <entity name="RecordDisassembler" class="
> ptolemy.actor.lib.RecordDisassembler">
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[110.0, 220.0]">
> DH>                     </property>
> DH>                     <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                     </property>
> DH>                     <port name="input" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="QueryStart" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="output"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                         </property>
> DH>                         <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="QueryEnd" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="output"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                         </property>
> DH>                         <property name="_showName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                         </property>
> DH>                     </port>
> DH>                 </entity>
> DH>                 <entity name="Expression" class="
> ptolemy.actor.lib.Expression">
> DH>                     <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="QueryStart &lt; QueryEnd ?
> QueryStart == 1 : QueryEnd == 1">
> DH>                     </property>
> DH>                     <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                         <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                         </property>
> DH>                         <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                         </property>
> DH>                     </property>
> DH>                     <property name="_location" class="
> ptolemy.kernel.util.Location" value="[370.0, 240.0]">
> DH>                     </property>
> DH>                     <port name="QueryStart" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                         </property>
> DH>                     </port>
> DH>                     <port name="QueryEnd" class="
> ptolemy.actor.TypedIOPort">
> DH>                         <property name="input"/>
> DH>                         <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                         </property>
> DH>                     </port>
> DH>                 </entity>
> DH>                 <relation name="relation2" class="
> ptolemy.actor.TypedIORelation">
> DH>                     <vertex name="vertex1" value="[85.0, 185.0]">
> DH>                     </vertex>
> DH>                 </relation>
> DH>                 <relation name="relation" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <relation name="relation3" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <relation name="relation4" class="
> ptolemy.actor.TypedIORelation">
> DH>                 </relation>
> DH>                 <link port="HomologRecord" relation="relation2"/>
> DH>                 <link port="OutRecord" relation="relation2"/>
> DH>                 <link port="Pass" relation="relation4"/>
> DH>                 <link port="RecordDisassembler.input"
> relation="relation2"/>
> DH>                 <link port="RecordDisassembler.QueryStart"
> relation="relation"/>
> DH>                 <link port="RecordDisassembler.QueryEnd"
> relation="relation3"/>
> DH>                 <link port="Expression.output" relation="relation4"/>
> DH>                 <link port="Expression.QueryStart"
> relation="relation"/>
> DH>                 <link port="Expression.QueryEnd"
> relation="relation3"/>
> DH>             </entity>
> DH>             <entity name="RecordUpdater" class="
> ptolemy.actor.lib.RecordUpdater">
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[925.0, 140.0]">
> DH>                 </property>
> DH>                 <port name="Sequence" class="ptolemy.actor.TypedIOPort
> ">
> DH>                     <property name="input"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="Expression2" class="
> ptolemy.actor.lib.Expression">
> DH>                 <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="&quot;&quot;">
> DH>                 </property>
> DH>                 <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                     <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                     </property>
> DH>                     <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[870.0, 170.0]">
> DH>                 </property>
> DH>                 <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>                 <port name="input" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="unknown">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="2" class="ptolemy.actor.lib.Expression">
> DH>                 <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="1">
> DH>                     <property name="style" class="
> ptolemy.actor.gui.style.LineStyle">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                     <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                     </property>
> DH>                     <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[825.0, 225.0]">
> DH>                 </property>
> DH>                 <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>                 <port name="output" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                     </property>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="input" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="NORTH">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <entity name="4" class="ptolemy.actor.lib.Expression">
> DH>                 <property name="expression" class="
> ptolemy.kernel.util.StringAttribute" value="0">
> DH>                     <property name="style" class="
> ptolemy.actor.gui.style.LineStyle">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_icon" class="
> ptolemy.vergil.icon.BoxedValueIcon">
> DH>                     <property name="attributeName" class="
> ptolemy.kernel.util.StringAttribute" value="expression">
> DH>                     </property>
> DH>                     <property name="displayWidth" class="
> ptolemy.data.expr.Parameter" value="60">
> DH>                     </property>
> DH>                 </property>
> DH>                 <property name="_location" class="
> ptolemy.kernel.util.Location" value="[740.0, 210.0]">
> DH>                 </property>
> DH>                 <property name="_hideName" class="
> ptolemy.kernel.util.SingletonAttribute">
> DH>                 </property>
> DH>                 <port name="output" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="output"/>
> DH>                     <property name="_type" class="
> ptolemy.actor.TypeAttribute" value="int">
> DH>                     </property>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="SOUTH">
> DH>                     </property>
> DH>                 </port>
> DH>                 <port name="input" class="ptolemy.actor.TypedIOPort">
> DH>                     <property name="input"/>
> DH>                     <property name="_cardinal" class="
> ptolemy.kernel.util.StringAttribute" value="NORTH">
> DH>                     </property>
> DH>                 </port>
> DH>             </entity>
> DH>             <relation name="relation8" class="
> ptolemy.actor.TypedIORelation">
> DH>                 <vertex name="vertex1" value="[825.0, 50.0]">
> DH>                 </vertex>
> DH>             </relation>
> DH>             <relation name="relation" class="
> ptolemy.actor.TypedIORelation">
> DH>                 <vertex name="vertex1" value="205.0, 365.0">
> DH>                 </vertex>
> DH>             </relation>
> DH>             <relation name="relation5" class="
> ptolemy.actor.TypedIORelation">
> DH>                 <vertex name="vertex1" value="[740.0, 150.0]">
> DH>                 </vertex>
> DH>             </relation>
> DH>             <relation name="relation6" class="
> ptolemy.actor.TypedIORelation">
> DH>                 <vertex name="vertex1" value="[740.0, 280.0]">
> DH>                 </vertex>
> DH>             </relation>
> DH>             <relation name="relation7" class="
> ptolemy.actor.TypedIORelation">
> DH>             </relation>
> DH>             <relation name="relation14" class="
> ptolemy.actor.TypedIORelation">
> DH>             </relation>
> DH>             <relation name="relation15" class="
> ptolemy.actor.TypedIORelation">
> DH>                 <vertex name="vertex1" value="405.0, 270.0">
> DH>                 </vertex>
> DH>             </relation>
> DH>             <relation name="relation16" class="
> ptolemy.actor.TypedIORelation">
> DH>                 <vertex name="vertex1" value="[120...
>
> [Message clipped]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mercury.nceas.ucsb.edu/ecoinformatics/pipermail/kepler-dev/attachments/20061106/ba95f4f0/attachment-0001.htm
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PIW.xml
Type: text/xml
Size: 231728 bytes
Desc: not available
Url : http://mercury.nceas.ucsb.edu/ecoinformatics/pipermail/kepler-dev/attachments/20061106/ba95f4f0/PIW-0001.xml


More information about the Kepler-dev mailing list