Project

General

Profile

ModifyDate2.xml

Daniel Crawl, 12/02/2015 04:29 PM

 
1
<?xml version="1.0" standalone="no"?>
2
<!DOCTYPE entity PUBLIC "-//UC Berkeley//DTD MoML 1//EN"
3
    "http://ptolemy.eecs.berkeley.edu/xml/dtd/MoML_1.dtd">
4
<entity name="ModifyDate2" class="ptolemy.actor.TypedCompositeActor">
5
    <property name="_createdBy" class="ptolemy.kernel.attributes.VersionAttribute" value="11.0.devel">
6
    </property>
7
    <property name="DE Director" class="ptolemy.domains.de.kernel.DEDirector">
8
        <property name="localClock" class="ptolemy.actor.LocalClock">
9
            <property name="globalTimeResolution" class="ptolemy.actor.parameters.SharedParameter" value="1E-3">
10
            </property>
11
        </property>
12
        <property name="synchronizeToRealTime" class="ptolemy.data.expr.Parameter" value="true">
13
        </property>
14
        <property name="_location" class="ptolemy.kernel.util.Location" value="[990.0, 550.0]">
15
        </property>
16
    </property>
17
    <property name="_windowProperties" class="ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={289, 24, 1410, 1002}, maximized=false}">
18
    </property>
19
    <property name="_vergilSize" class="ptolemy.actor.gui.SizeAttribute" value="[1100, 844]">
20
    </property>
21
    <property name="_vergilZoomFactor" class="ptolemy.data.expr.ExpertParameter" value="0.8">
22
    </property>
23
    <property name="_vergilCenter" class="ptolemy.data.expr.ExpertParameter" value="{1542.4418604651164, 735.7039425872094}">
24
    </property>
25
    <property name="derivedFrom" class="org.kepler.moml.NamedObjIdReferralList" value="urn:lsid:kepler-project.org/ns/:80777:85:122">
26
    </property>
27
    <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org/ns/:80777:108:25">
28
    </property>
29
    <entity name="SingleEvent" class="ptolemy.actor.lib.SingleEvent">
30
        <property name="_location" class="ptolemy.kernel.util.Location" value="[930.0, 780.0]">
31
        </property>
32
    </entity>
33
    <entity name="ModifyDate" class="ptolemy.actor.lib.ModifyDate">
34
        <property name="operation" class="ptolemy.data.expr.StringParameter" value="+">
35
        </property>
36
        <property name="unit" class="ptolemy.data.expr.StringParameter" value="Second">
37
        </property>
38
        <property name="_location" class="ptolemy.kernel.util.Location" value="{1199.0, 789.0}">
39
        </property>
40
    </entity>
41
    <entity name="Const" class="ptolemy.actor.lib.Const">
42
        <property name="value" class="ptolemy.data.expr.Parameter" value="2">
43
        </property>
44
        <doc>Create a constant sequence.</doc>
45
        <property name="_icon" class="ptolemy.vergil.icon.BoxedValueIcon">
46
            <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="value">
47
            </property>
48
            <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="60">
49
            </property>
50
        </property>
51
        <property name="_location" class="ptolemy.kernel.util.Location" value="{1099.0, 799.0}">
52
        </property>
53
        <property name="_hideName" class="ptolemy.data.expr.SingletonParameter" value="true">
54
        </property>
55
        <port name="trigger" class="ptolemy.actor.TypedIOPort">
56
            <property name="input"/>
57
            <property name="multiport"/>
58
            <property name="_showName" class="ptolemy.data.expr.SingletonParameter" value="false">
59
            </property>
60
        </port>
61
    </entity>
62
    <entity name="output 2 seconds later" class="ptolemy.actor.lib.gui.MonitorValue">
63
        <doc>Monitor and display values</doc>
64
        <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="43">
65
        </property>
66
        <property name="_icon" class="ptolemy.vergil.icon.UpdatedValueIcon">
67
            <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="value">
68
            </property>
69
            <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="displayWidth">
70
            </property>
71
        </property>
72
        <property name="_location" class="ptolemy.kernel.util.Location" value="[1615.0, 875.0]">
73
        </property>
74
        <property name="_hideName" class="ptolemy.data.expr.SingletonParameter" value="false">
75
        </property>
76
    </entity>
77
    <entity name="CurrentDate" class="ptolemy.actor.lib.CurrentDate">
78
        <property name="_location" class="ptolemy.kernel.util.Location" value="{1079.0, 719.0}">
79
        </property>
80
    </entity>
81
    <entity name="output " class="ptolemy.actor.lib.gui.MonitorValue">
82
        <doc>Monitor and display values</doc>
83
        <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="43">
84
        </property>
85
        <property name="_icon" class="ptolemy.vergil.icon.UpdatedValueIcon">
86
            <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="value">
87
            </property>
88
            <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="displayWidth">
89
            </property>
90
        </property>
91
        <property name="_location" class="ptolemy.kernel.util.Location" value="[1355.0, 505.0]">
92
        </property>
93
        <property name="_hideName" class="ptolemy.data.expr.SingletonParameter" value="false">
94
        </property>
95
    </entity>
96
    <entity name="Expression" class="ptolemy.actor.lib.Expression">
97
        <property name="expression" class="ptolemy.kernel.util.StringAttribute" value="in.getValue() - 2000">
98
            <property name="_hide" class="ptolemy.data.expr.Parameter" value="true">
99
            </property>
100
        </property>
101
<property name="KeplerDocumentation" class="ptolemy.vergil.basic.KeplerDocumentationAttribute">
102
<property name="description" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
103
<property name="author" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Xiaojun Liu, Edward A. Lee, Steve Neuendorffer</configure></property>
104
<property name="version" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
105
<property name="userLevelDocumentation" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>&lt;p&gt;The Expression actor evaluates a specified expression (e.g., an addition or multiplication operation), which may reference the values of user-specified input ports, the current time, or the actor's iteration count. The actor outputs the value of the evaluated expression. &lt;/p&gt;&#10;&#10;&lt;p&gt;Expressions are specified in the Ptolemy expression language via the expression parameter. For more information about the expression language, see http://ptolemy.eecs.berkeley.edu/papers/05/ptIIdesign1-intro/ptIIdesign1-intro.pdf. &lt;/p&gt;&#10;&#10;&lt;p&gt;By default, the expression parameter is empty, and attempting to execute the actor without first specifying an expression generates an error. Expressions can refer to the values of inputs by the port name; to the current time by the identifier &quot;time&quot;; and to the current iteration count by the identifier &quot;iteration.&quot; &lt;/p&gt;&#10;&#10;&lt;p&gt;Input ports are created by the user and correspond to variables used in the specified expression. Currently, the Expression actor does not support input multiports. The actor requires all of its inputs to be present. If inputs are not all present, then the actor will generate an error. &lt;/p&gt;&#10;&#10;&lt;p&gt;Note: the Expression actor can be used instead of many of the arithmetic actors, such as AddSubtract, MultiplyDivide, and TrigFunction. However, those actors will be usually be more efficient, and sometimes more convenient to use.&lt;/p&gt;</configure></property>
106
<property name="port:output" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>An output port that broadcasts the value of the evaluated expression. The actor automatically determines the type based on the type of the input.</configure></property>
107
<property name="prop:expression" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>An expression to evaluate. Expressions are specified in the Ptolemy expression language. For more information about the expression language, see http://ptolemy.eecs.berkeley.edu/papers/05/ptIIdesign1-intro/ptIIdesign1-intro.pdf. By default, the parameter is empty, and attempting to execute the actor without first specifying an expression generates an error. Expressions can refer to the values of inputs by the port name; to the current time by the identifier &quot;time&quot;; and to the current iteration count by the identifier &quot;iteration.&quot;</configure></property>
108
</property>        <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org/ns/:80777:94:9">
109
        </property>
110
        <property name="class" class="ptolemy.kernel.util.StringAttribute" value="ptolemy.actor.lib.Expression">
111
            <property name="id" class="ptolemy.kernel.util.StringAttribute" value="urn:lsid:kepler-project.org:class:950:1">
112
            </property>
113
        </property>
114
        <property name="semanticType00" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:1:1#MathOperationActor">
115
        </property>
116
        <property name="semanticType11" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:2:1#GeneralPurpose">
117
        </property>
118
        <property name="_icon" class="ptolemy.vergil.icon.BoxedValueIcon">
119
            <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="expression">
120
            </property>
121
            <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="60">
122
            </property>
123
        </property>
124
        <property name="_location" class="ptolemy.kernel.util.Location" value="[1555.0, 740.0]">
125
        </property>
126
        <property name="derivedFrom" class="org.kepler.moml.NamedObjIdReferralList" value="urn:lsid:kepler-project.org:actor:75:1">
127
        </property>
128
        <port name="in" class="ptolemy.actor.TypedIOPort">
129
            <property name="input"/>
130
        </port>
131
    </entity>
132
    <entity name="Expression2" class="ptolemy.actor.lib.Expression">
133
        <property name="expression" class="ptolemy.kernel.util.StringAttribute" value="in.getValue()">
134
            <property name="_hide" class="ptolemy.data.expr.Parameter" value="true">
135
            </property>
136
        </property>
137
<property name="KeplerDocumentation" class="ptolemy.vergil.basic.KeplerDocumentationAttribute">
138
<property name="description" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
139
<property name="author" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Xiaojun Liu, Edward A. Lee, Steve Neuendorffer</configure></property>
140
<property name="version" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
141
<property name="userLevelDocumentation" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>&lt;p&gt;The Expression actor evaluates a specified expression (e.g., an addition or multiplication operation), which may reference the values of user-specified input ports, the current time, or the actor's iteration count. The actor outputs the value of the evaluated expression. &lt;/p&gt;&#10;&#10;&lt;p&gt;Expressions are specified in the Ptolemy expression language via the expression parameter. For more information about the expression language, see http://ptolemy.eecs.berkeley.edu/papers/05/ptIIdesign1-intro/ptIIdesign1-intro.pdf. &lt;/p&gt;&#10;&#10;&lt;p&gt;By default, the expression parameter is empty, and attempting to execute the actor without first specifying an expression generates an error. Expressions can refer to the values of inputs by the port name; to the current time by the identifier &quot;time&quot;; and to the current iteration count by the identifier &quot;iteration.&quot; &lt;/p&gt;&#10;&#10;&lt;p&gt;Input ports are created by the user and correspond to variables used in the specified expression. Currently, the Expression actor does not support input multiports. The actor requires all of its inputs to be present. If inputs are not all present, then the actor will generate an error. &lt;/p&gt;&#10;&#10;&lt;p&gt;Note: the Expression actor can be used instead of many of the arithmetic actors, such as AddSubtract, MultiplyDivide, and TrigFunction. However, those actors will be usually be more efficient, and sometimes more convenient to use.&lt;/p&gt;</configure></property>
142
<property name="port:output" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>An output port that broadcasts the value of the evaluated expression. The actor automatically determines the type based on the type of the input.</configure></property>
143
<property name="prop:expression" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>An expression to evaluate. Expressions are specified in the Ptolemy expression language. For more information about the expression language, see http://ptolemy.eecs.berkeley.edu/papers/05/ptIIdesign1-intro/ptIIdesign1-intro.pdf. By default, the parameter is empty, and attempting to execute the actor without first specifying an expression generates an error. Expressions can refer to the values of inputs by the port name; to the current time by the identifier &quot;time&quot;; and to the current iteration count by the identifier &quot;iteration.&quot;</configure></property>
144
</property>        <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org/ns/:80777:94:5">
145
        </property>
146
        <property name="class" class="ptolemy.kernel.util.StringAttribute" value="ptolemy.actor.lib.Expression">
147
            <property name="id" class="ptolemy.kernel.util.StringAttribute" value="urn:lsid:kepler-project.org:class:950:1">
148
            </property>
149
        </property>
150
        <property name="semanticType00" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:1:1#MathOperationActor">
151
        </property>
152
        <property name="semanticType11" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:2:1#GeneralPurpose">
153
        </property>
154
        <property name="_icon" class="ptolemy.vergil.icon.BoxedValueIcon">
155
            <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="expression">
156
            </property>
157
            <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="60">
158
            </property>
159
        </property>
160
        <property name="_location" class="ptolemy.kernel.util.Location" value="{1439.9418604651164, 670.7039425872094}">
161
        </property>
162
        <property name="derivedFrom" class="org.kepler.moml.NamedObjIdReferralList" value="urn:lsid:kepler-project.org:actor:75:1">
163
        </property>
164
        <port name="in" class="ptolemy.actor.TypedIOPort">
165
            <property name="input"/>
166
        </port>
167
    </entity>
168
    <entity name="Synchronizer" class="ptolemy.actor.lib.Synchronizer">
169
<property name="KeplerDocumentation" class="ptolemy.vergil.basic.KeplerDocumentationAttribute">
170
<property name="description" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
171
<property name="author" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Paul Whitaker</configure></property>
172
<property name="version" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>$Id: Synchronizer.java 61458 2011-07-11 19:54:07Z cxh $</configure></property>
173
<property name="userLevelDocumentation" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>&#10;This actor implements a token synchronizer.  It has one input port and&#10; one output port, both of which are multiports.  When at least one token&#10; exists on every input channel, exactly one token is consumed from each&#10; input channel, and the tokens are output on the corresponding output&#10; channels. If any input channel is missing a token, then no output is&#10; produced.&#10; &lt;p&gt;&#10; Note that the ordering of channels of a multiport is determined by the&#10; order of connection.  Thus the n&lt;sup&gt;th&lt;/sup&gt; input channel connected&#10; corresponds to the n&lt;sup&gt;th&lt;/sup&gt; output channel connected.</configure></property>
174
<property name="port:output" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The output port. By default, the type of this output is constrained  to be at least that of the input.</configure></property>
175
<property name="port:input" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The input port.  This base class imposes no type constraints except  that the type of the input cannot be greater than the type of the  output.</configure></property>
176
</property>        <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org:actor:725:1">
177
        </property>
178
        <property name="class" class="ptolemy.kernel.util.StringAttribute" value="ptolemy.actor.lib.Synchronizer">
179
            <property name="id" class="ptolemy.kernel.util.StringAttribute" value="null">
180
            </property>
181
        </property>
182
        <property name="semanticType00" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:2:1#WorkflowControl">
183
        </property>
184
        <property name="_location" class="ptolemy.kernel.util.Location" value="[1690.0, 630.0]">
185
        </property>
186
    </entity>
187
    <entity name="Equals" class="ptolemy.actor.lib.logic.Equals">
188
<property name="KeplerDocumentation" class="ptolemy.vergil.basic.KeplerDocumentationAttribute">
189
<property name="description" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
190
<property name="author" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>John Li and Edward A. Lee</configure></property>
191
<property name="version" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
192
<property name="userLevelDocumentation" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>&lt;p&gt;The Equals actor reads one token of any type from each channel of its input multiport and compares the values to see if they are equal. If all input tokens are equal, the actor outputs the Boolean value true; if the tokens are not all equal, the actor outputs false.&lt;/p&gt;&#10;&#10;&lt;p&gt;The actor automatically resolves the input type; however, if all input channels cannot resolve to the same type (which would be the case if one input were a matrix and another an array, for example), the actor will generate an error. If the actor does not receive an input token on at least one input channel, it will produce no output.&lt;/p&gt;</configure></property>
193
<property name="port:output" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>An output port that broadcasts a Boolean token: true if all input tokens are equal, or false if they are not.</configure></property>
194
<property name="port:input" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>A multiport that receives tokens of any type. The actor automatically resolves the input type; however, if all input channels cannot resolve to the same type (which would be the case if one input were a matrix and another an array, for example), the actor will generate an error.</configure></property>
195
</property>        <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org:actor:65:1">
196
        </property>
197
        <property name="class" class="ptolemy.kernel.util.StringAttribute" value="ptolemy.actor.lib.logic.Equals">
198
            <property name="id" class="ptolemy.kernel.util.StringAttribute" value="urn:lsid:kepler-project.org:class:940:1">
199
            </property>
200
        </property>
201
        <property name="semanticType00" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:1:1#BooleanControlActor">
202
        </property>
203
        <property name="semanticType11" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:2:1#BooleanControl">
204
        </property>
205
        <property name="_location" class="ptolemy.kernel.util.Location" value="[1780.0, 630.0]">
206
        </property>
207
    </entity>
208
    <entity name="Test" class="ptolemy.actor.lib.Test">
209
        <property name="correctValues" class="ptolemy.data.expr.Parameter" value="{true}">
210
        </property>
211
        <property name="tolerance" class="ptolemy.data.expr.Parameter" value="1.0E-9">
212
        </property>
213
        <property name="requireAllCorrectValues" class="ptolemy.actor.parameters.SharedParameter" value="true">
214
        </property>
215
        <property name="requireOrderedValues" class="ptolemy.data.expr.Parameter" value="true">
216
        </property>
217
        <property name="trainingMode" class="ptolemy.actor.parameters.SharedParameter" value="false">
218
        </property>
219
<property name="KeplerDocumentation" class="ptolemy.vergil.basic.KeplerDocumentationAttribute">
220
<property name="description" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
221
<property name="author" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Edward A. Lee, Christopher Hylands, Jim Armstrong</configure></property>
222
<property name="version" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
223
<property name="userLevelDocumentation" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>&lt;p&gt;The Test actor reads an input value of any type and compares it to a corresponding value in a specified array of values. If the two values match, the actor fires successfully. If the two values do not match, the actor generates an error. The actor outputs a Boolean token: false if the actor's iteration count is less than or equal to the length of the comparison array; true if the iteration count is greater than the length of the array. The Boolean output can be fed to a Stop actor to stop the workflow upon successfully matching test data.&lt;/p&gt;&#10;&#10;&lt;p&gt;Unlike the NonstrictTest actor, the Test actor supports a multiport input. The actor also differs from NonstrictTest in that it requires that all inputs be present. &lt;/p&gt;&#10;&#10;&lt;p&gt;The comparison value is specified with the correctValues parameter. The parameter accepts an array of values, the type of which must match the type of the input (the default array is {true}). The actor cycles through the array values, comparing each consecutive input to the next token in the correctValues array. After each of the values in the correctValues parameter has been matched, any subsequent iteration always succeeds. This behavior allows the actor to be used as a &quot;power-up&quot; test for a model; the actor will check the first few iterations against some known results. &lt;/p&gt;&#10;&#10;&lt;p&gt;The input is a multiport. If more than one input channel exists, then each element of correctValues must itself be an array, with length matching the number of channels. &lt;/p&gt;&#10;&#10;&lt;p&gt;Suppose for example that the input consists of one channel, and the first three inputs should be 1, 2, and 3. Then set correctValues to &#10;&#10; {1, 2, 3}&lt;/p&gt;&#10;&#10;&lt;p&gt;Suppose instead that the input consists of two channels, and the correct values in the first iteration are 1 on the first channel and 2 on the second. Then on the second iteration, the correct values are 3 on the first channel and 4 on the second. Then set correctValues to &#10;&#10; {{1, 2}, {3, 4}}&#10;&#10;Note: With this setting, no tests are performed after the first two iterations of this actor. &lt;/p&gt;&#10;&#10;&lt;p&gt;The input values are checked when the actor fires. If an input value is missing or differs from what it should be, then the actor generates an error. To check the input value after the actor fires, then use the NonstrictTest actor. &lt;/p&gt;&#10;&#10;&lt;p&gt;If the input is a double or complex token, then the comparison &quot;passes&quot; if the value is close to what it should be (i.e., within the specified tolerance). Tolerance is specified with the tolerance parameter, and defaults to 10-9.&lt;/p&gt;</configure></property>
224
<property name="port:output" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Boolean output that is false as long as there is data to compare against the input; the value becomes true on the first firing after such data has been exhausted.</configure></property>
225
<property name="port:input" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>A multiport that accepts tokens of any type.</configure></property>
226
<property name="prop:tolerance" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>A double token specifying how closely the input must match the value from the correctValues array. The default is 10-9.</configure></property>
227
<property name="prop:correctValues" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>An array specifying what the input should be. If more than one input channel exists, then each element of the array must itself be an array, with length matching the number of channels. The default is a one-by-one array containing a Boolean true.</configure></property>
228
<property name="prop:trainingMode" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Select the trainingMode parameter to collect the input values and place them in the correctValues array. The trainingMode parameter is a shared parameter, meaning that changing it for any one instance of the actor in the model will change all instances.</configure></property>
229
</property>        <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org/ns/:80777:105:2">
230
        </property>
231
        <property name="class" class="ptolemy.kernel.util.StringAttribute" value="ptolemy.actor.lib.Test">
232
            <property name="id" class="ptolemy.kernel.util.StringAttribute" value="urn:lsid:kepler-project.org:class:985:1">
233
            </property>
234
        </property>
235
        <property name="semanticType00" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:1:1#UnitTestControlActor">
236
        </property>
237
        <property name="semanticType11" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:2:1#UnitTestControl">
238
        </property>
239
        <property name="_location" class="ptolemy.kernel.util.Location" value="[1885.0, 630.0]">
240
        </property>
241
        <property name="derivedFrom" class="org.kepler.moml.NamedObjIdReferralList" value="urn:lsid:kepler-project.org:actor:116:1">
242
        </property>
243
    </entity>
244
    <entity name="value2" class="ptolemy.actor.lib.gui.MonitorValue">
245
        <doc>Monitor and display values</doc>
246
        <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="43">
247
        </property>
248
        <property name="_icon" class="ptolemy.vergil.icon.UpdatedValueIcon">
249
            <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="value">
250
            </property>
251
            <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="displayWidth">
252
            </property>
253
        </property>
254
        <property name="_location" class="ptolemy.kernel.util.Location" value="[1960.0, 795.0]">
255
        </property>
256
        <property name="_hideName" class="ptolemy.data.expr.SingletonParameter" value="false">
257
        </property>
258
    </entity>
259
    <entity name="value" class="ptolemy.actor.lib.gui.MonitorValue">
260
        <doc>Monitor and display values</doc>
261
        <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="43">
262
        </property>
263
        <property name="_icon" class="ptolemy.vergil.icon.UpdatedValueIcon">
264
            <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="value">
265
            </property>
266
            <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="displayWidth">
267
            </property>
268
        </property>
269
        <property name="_location" class="ptolemy.kernel.util.Location" value="[1775.0, 540.0]">
270
        </property>
271
        <property name="_hideName" class="ptolemy.data.expr.SingletonParameter" value="false">
272
        </property>
273
    </entity>
274
    <relation name="relation" class="ptolemy.actor.TypedIORelation">
275
        <property name="width" class="ptolemy.data.expr.Parameter" value="-1">
276
        </property>
277
        <vertex name="vertex1" value="{1034.0, 799.0}">
278
        </vertex>
279
    </relation>
280
    <relation name="relation2" class="ptolemy.actor.TypedIORelation">
281
    </relation>
282
    <relation name="relation4" class="ptolemy.actor.TypedIORelation">
283
        <property name="width" class="ptolemy.data.expr.Parameter" value="-1">
284
        </property>
285
        <vertex name="vertex1" value="[1180.0, 740.0]">
286
        </vertex>
287
    </relation>
288
    <relation name="relation5" class="ptolemy.actor.TypedIORelation">
289
        <property name="width" class="ptolemy.data.expr.Parameter" value="-1">
290
        </property>
291
        <vertex name="vertex1" value="[1425.0, 785.0]">
292
        </vertex>
293
    </relation>
294
    <relation name="relation3" class="ptolemy.actor.TypedIORelation">
295
    </relation>
296
    <relation name="relation8" class="ptolemy.actor.TypedIORelation">
297
    </relation>
298
    <relation name="relation9" class="ptolemy.actor.TypedIORelation">
299
        <property name="width" class="ptolemy.data.expr.Parameter" value="-1">
300
        </property>
301
        <vertex name="vertex1" value="[1635.0, 740.0]">
302
        </vertex>
303
    </relation>
304
    <relation name="relation7" class="ptolemy.actor.TypedIORelation">
305
        <property name="width" class="ptolemy.data.expr.Parameter" value="-1">
306
        </property>
307
        <vertex name="vertex1" value="{1540.0, 645.0}">
308
        </vertex>
309
    </relation>
310
    <link port="SingleEvent.output" relation="relation"/>
311
    <link port="ModifyDate.input" relation="relation4"/>
312
    <link port="ModifyDate.value" relation="relation2"/>
313
    <link port="ModifyDate.output" relation="relation5"/>
314
    <link port="Const.output" relation="relation2"/>
315
    <link port="Const.trigger" relation="relation"/>
316
    <link port="output 2 seconds later.input" relation="relation5"/>
317
    <link port="CurrentDate.output" relation="relation4"/>
318
    <link port="CurrentDate.trigger" relation="relation"/>
319
    <link port="output .input" relation="relation4"/>
320
    <link port="Expression.output" relation="relation9"/>
321
    <link port="Expression.in" relation="relation5"/>
322
    <link port="Expression2.output" relation="relation7"/>
323
    <link port="Expression2.in" relation="relation4"/>
324
    <link port="Synchronizer.input" relation="relation7"/>
325
    <link port="Synchronizer.input" relation="relation9"/>
326
    <link port="Synchronizer.output" relation="relation3"/>
327
    <link port="Equals.input" relation="relation3"/>
328
    <link port="Equals.output" relation="relation8"/>
329
    <link port="Test.input" relation="relation8"/>
330
    <link port="value2.input" relation="relation9"/>
331
    <link port="value.input" relation="relation7"/>
332
</entity>