<html>
<head>
<style>
body {
  font-family: Verdana, sans-serif;
  font-size: 0.8em;
  color:#484848;
}
h1, h2, h3 { font-family: "Trebuchet MS", Verdana, sans-serif; margin: 0px; }
h1 { font-size: 1.2em; }
h2, h3 { font-size: 1.1em; }
a, a:link, a:visited { color: #2A5685;}
a:hover, a:active { color: #c61a1a; }
a.wiki-anchor { display: none; }
hr {
  width: 100%;
  height: 1px;
  background: #ccc;
  border: 0;
}
.footer {
  font-size: 0.8em;
  font-style: italic;
}
</style>
</head>
<body>
<span class="header"></span>
Issue #6572 has been reported by jianwu jianwu.
<hr />
<h1><a href="https://projects.ecoinformatics.org/ecoinfo/issues/6572">Bug #6572: An error is thrown when opening MatlabExpression.xml in common/workflows/demos/Matlab in trunk.</a></h1>

<ul>
<li>Author: jianwu jianwu</li>
<li>Status: New</li>
<li>Priority: Normal</li>
<li>Assignee: Daniel Crawl</li>
<li>Category: actors</li>
<li>Target version: 2.5.0</li>
  <li>Bugzilla-Id: </li>
</ul>

<p>I got the following errors. The main reason is that $name is in the documentation of the actor explaining the expression parameter. If I edit the xml changing from $name to be $$name, the workflow can be opened correctly.</p>


        <p>The same workflow works fine with Kepler 2.4. Not sure which changes in Kepler trunk cause this problem.</p>


        <p>ptolemy.kernel.util.IllegalActionException: Error evaluating expression: <br />The parameter that is evaluated to produce the output. Typically, this parameter <br />evaluates an expression involving the inputs. To refer to parameters in scope <br />within the expression, use $name or ${name}, where "name" is the name of the <br />parameter.</p>


        <pre><code>in .MatlabExpression.MatlabExpression.&lt;Unnamed Object&gt;.expression (parameter)<br />Because:<br />The ID name is undefined.<br />  in .MatlabExpression.MatlabExpression.&lt;Unnamed Object&gt;.expression (parameter)<br />Because:<br />Error evaluating expression: <br />The parameter that is evaluated to produce the output. Typically, this parameter <br />evaluates an expression involving the inputs. To refer to parameters in scope <br />within the expression, use $name or ${name}, where "name" is the name of the <br />parameter.</code></pre>


        <pre><code>in .MatlabExpression.MatlabExpression.&lt;Unnamed Object&gt;.expression (parameter)<br />Because:<br />The ID name is undefined.<br />    at ptolemy.data.expr.Variable.validate(Variable.java:1507)<br />    at ptolemy.moml.MoMLParser.endDocument(MoMLParser.java:816)<br />    at com.microstar.xml.XmlParser.doParse(XmlParser.java:162)<br />    at com.microstar.xml.XmlParser.parse(XmlParser.java:132)<br />    at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1571)<br />    at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1507)<br />    at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1451)<br />    at ptolemy.moml.MoMLParser.parseFile(MoMLParser.java:1735)<br />    at org.kepler.gui.component.OpenCompositeAction.actionPerformed(OpenCompositeAction.java:147)<br />    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2028)<br />    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)<br />    at javax.swing.DefaultBu
 ttonModel.fireActionPerformed(DefaultButtonModel.java:387)<br />    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)<br />    at javax.swing.AbstractButton.doClick(AbstractButton.java:389)<br />    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:809)<br />    at com.apple.laf.AquaMenuItemUI.doClick(AquaMenuItemUI.java:137)<br />    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:850)<br />    at java.awt.Component.processMouseEvent(Component.java:6414)<br />    at javax.swing.JComponent.processMouseEvent(JComponent.java:3275)<br />    at java.awt.Component.processEvent(Component.java:6179)<br />    at java.awt.Container.processEvent(Container.java:2084)<br />    at java.awt.Component.dispatchEventImpl(Component.java:4776)<br />    at java.awt.Container.dispatchEventImpl(Container.java:2142)<br />    at java.awt.Component.dispatchEvent(Component.java:4604)<br />    at java.awt.LightweightDisp
 atcher.retargetMouseEvent(Container.java:4618)<br />    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4279)<br />    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4209)<br />    at java.awt.Container.dispatchEventImpl(Container.java:2128)<br />    at java.awt.Window.dispatchEventImpl(Window.java:2492)<br />    at java.awt.Component.dispatchEvent(Component.java:4604)<br />    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:717)<br />    at java.awt.EventQueue.access$400(EventQueue.java:82)<br />    at java.awt.EventQueue$2.run(EventQueue.java:676)<br />    at java.awt.EventQueue$2.run(EventQueue.java:674)<br />    at java.security.AccessController.doPrivileged(Native Method)<br />    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)<br />    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:97)<br />    at java.awt.EventQueue$3.run(EventQueue.java
 :690)<br />    at java.awt.EventQueue$3.run(EventQueue.java:688)<br />    at java.security.AccessController.doPrivileged(Native Method)<br />    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)<br />    at java.awt.EventQueue.dispatchEvent(EventQueue.java:687)<br />    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)<br />    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)<br />    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)<br />    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)<br />    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)<br />    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)<br />Caused by: ptolemy.kernel.util.IllegalActionException: Error evaluating expression: <br />The parameter that is evaluated to produce the output. Typically, this
  parameter <br />evaluates an expression involving the inputs. To refer to parameters in scope <br />within the expression, use $name or ${name}, where "name" is the name of the <br />parameter.</code></pre>


        <pre><code>in .MatlabExpression.MatlabExpression.&lt;Unnamed Object&gt;.expression (parameter)<br />Because:<br />The ID name is undefined.<br />    at ptolemy.data.expr.Variable._evaluate(Variable.java:1771)<br />    at ptolemy.data.expr.Variable._propagate(Variable.java:1848)<br />    at ptolemy.data.expr.Variable.validate(Variable.java:1484)<br />    ... 47 more<br />Caused by: ptolemy.data.expr.UndefinedConstantOrIdentifierException: The ID name is undefined.<br />    at ptolemy.data.expr.ParseTreeEvaluator.visitLeafNode(ParseTreeEvaluator.java:723)<br />    at ptolemy.data.expr.ASTPtLeafNode.visit(ASTPtLeafNode.java:125)<br />    at ptolemy.data.expr.ParseTreeEvaluator._evaluateChild(ParseTreeEvaluator.java:1360)<br />    at ptolemy.data.expr.ParseTreeEvaluator._evaluateAllChildren(ParseTreeEvaluator.java:1314)<br />    at ptolemy.data.expr.ParseTreeEvaluator.visitSumNode(ParseTreeEvaluator.java:1166)<br />    at ptolemy.data.expr.ASTPtSumNode.visit(ASTPtSumNode
 .java:129)<br />    at ptolemy.data.expr.ParseTreeEvaluator.evaluateParseTree(ParseTreeEvaluator.java:105)<br />    at ptolemy.data.expr.Variable._evaluate(Variable.java:1753)<br />    ... 49 more<br />Caused by: ptolemy.kernel.util.IllegalActionException: Error evaluating expression: <br />The parameter that is evaluated to produce the output. Typically, this parameter <br />evaluates an expression involving the inputs. To refer to parameters in scope <br />within the expression, use $name or ${name}, where "name" is the name of the <br />parameter.</code></pre>


        <pre><code>in .MatlabExpression.MatlabExpression.&lt;Unnamed Object&gt;.expression (parameter)<br />Because:<br />The ID name is undefined.<br />    at ptolemy.data.expr.Variable._evaluate(Variable.java:1771)<br />    at ptolemy.data.expr.Variable._propagate(Variable.java:1848)<br />    at ptolemy.data.expr.Variable.validate(Variable.java:1484)<br />    at ptolemy.moml.MoMLParser.endDocument(MoMLParser.java:816)<br />    at com.microstar.xml.XmlParser.doParse(XmlParser.java:162)<br />    at com.microstar.xml.XmlParser.parse(XmlParser.java:132)<br />    at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1571)<br />    at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1507)<br />    at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1451)<br />    at ptolemy.moml.MoMLParser.parseFile(MoMLParser.java:1735)<br />    at org.kepler.gui.component.OpenCompositeAction.actionPerformed(OpenCompositeAction.java:147)<br />    at javax.swing.AbstractButton.fireActionPerformed(AbstractB
 utton.java:2028)<br />    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)<br />    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)<br />    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)<br />    at javax.swing.AbstractButton.doClick(AbstractButton.java:389)<br />    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:809)<br />    at com.apple.laf.AquaMenuItemUI.doClick(AquaMenuItemUI.java:137)<br />    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:850)<br />    at java.awt.Component.processMouseEvent(Component.java:6414)<br />    at javax.swing.JComponent.processMouseEvent(JComponent.java:3275)<br />    at java.awt.Component.processEvent(Component.java:6179)<br />    at java.awt.Container.processEvent(Container.java:2084)<br />    at java.awt.Component.dispatchEventImpl(Component.java:4776)<br />    at java.awt.Container.di
 spatchEventImpl(Container.java:2142)<br />    at java.awt.Component.dispatchEvent(Component.java:4604)<br />    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4618)<br />    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4279)<br />    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4209)<br />    at java.awt.Container.dispatchEventImpl(Container.java:2128)<br />    at java.awt.Window.dispatchEventImpl(Window.java:2492)<br />    at java.awt.Component.dispatchEvent(Component.java:4604)<br />    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:717)<br />    at java.awt.EventQueue.access$400(EventQueue.java:82)<br />    at java.awt.EventQueue$2.run(EventQueue.java:676)<br />    at java.awt.EventQueue$2.run(EventQueue.java:674)<br />    at java.security.AccessController.doPrivileged(Native Method)<br />    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)<br />    at java.
 security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:97)<br />    at java.awt.EventQueue$3.run(EventQueue.java:690)<br />    at java.awt.EventQueue$3.run(EventQueue.java:688)<br />    at java.security.AccessController.doPrivileged(Native Method)<br />    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)<br />    at java.awt.EventQueue.dispatchEvent(EventQueue.java:687)<br />    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)<br />    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)<br />    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)<br />    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)<br />    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)<br />    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)<br />Caused by: ptolemy.da
 ta.expr.UndefinedConstantOrIdentifierException: The ID name is undefined.<br />    at ptolemy.data.expr.ParseTreeEvaluator.visitLeafNode(ParseTreeEvaluator.java:723)<br />    at ptolemy.data.expr.ASTPtLeafNode.visit(ASTPtLeafNode.java:125)<br />    at ptolemy.data.expr.ParseTreeEvaluator._evaluateChild(ParseTreeEvaluator.java:1360)<br />    at ptolemy.data.expr.ParseTreeEvaluator._evaluateAllChildren(ParseTreeEvaluator.java:1314)<br />    at ptolemy.data.expr.ParseTreeEvaluator.visitSumNode(ParseTreeEvaluator.java:1166)<br />    at ptolemy.data.expr.ASTPtSumNode.visit(ASTPtSumNode.java:129)<br />    at ptolemy.data.expr.ParseTreeEvaluator.evaluateParseTree(ParseTreeEvaluator.java:105)<br />    at ptolemy.data.expr.Variable._evaluate(Variable.java:1753)<br />    ... 49 more<br />Caused by: ptolemy.data.expr.UndefinedConstantOrIdentifierException: The ID name is undefined.<br />    at ptolemy.data.expr.ParseTreeEvaluator.visitLeafNode(ParseTreeEvaluator.java:723)<br />    at p
 tolemy.data.expr.ASTPtLeafNode.visit(ASTPtLeafNode.java:125)<br />    at ptolemy.data.expr.ParseTreeEvaluator._evaluateChild(ParseTreeEvaluator.java:1360)<br />    at ptolemy.data.expr.ParseTreeEvaluator._evaluateAllChildren(ParseTreeEvaluator.java:1314)<br />    at ptolemy.data.expr.ParseTreeEvaluator.visitSumNode(ParseTreeEvaluator.java:1166)<br />    at ptolemy.data.expr.ASTPtSumNode.visit(ASTPtSumNode.java:129)<br />    at ptolemy.data.expr.ParseTreeEvaluator.evaluateParseTree(ParseTreeEvaluator.java:105)<br />    at ptolemy.data.expr.Variable._evaluate(Variable.java:1753)<br />    at ptolemy.data.expr.Variable._propagate(Variable.java:1848)<br />    at ptolemy.data.expr.Variable.validate(Variable.java:1484)<br />    at ptolemy.moml.MoMLParser.endDocument(MoMLParser.java:816)<br />    at com.microstar.xml.XmlParser.doParse(XmlParser.java:162)<br />    at com.microstar.xml.XmlParser.parse(XmlParser.java:132)<br />    at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1571)<
 br />    at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1507)<br />    at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1451)<br />    at ptolemy.moml.MoMLParser.parseFile(MoMLParser.java:1735)<br />    at org.kepler.gui.component.OpenCompositeAction.actionPerformed(OpenCompositeAction.java:147)<br />    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2028)<br />    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)<br />    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)<br />    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)<br />    at javax.swing.AbstractButton.doClick(AbstractButton.java:389)<br />    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:809)<br />    at com.apple.laf.AquaMenuItemUI.doClick(AquaMenuItemUI.java:137)<br />    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:850)<br />    at
  java.awt.Component.processMouseEvent(Component.java:6414)<br />    at javax.swing.JComponent.processMouseEvent(JComponent.java:3275)<br />    at java.awt.Component.processEvent(Component.java:6179)<br />    at java.awt.Container.processEvent(Container.java:2084)<br />    at java.awt.Component.dispatchEventImpl(Component.java:4776)<br />    at java.awt.Container.dispatchEventImpl(Container.java:2142)<br />    at java.awt.Component.dispatchEvent(Component.java:4604)<br />    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4618)<br />    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4279)<br />    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4209)<br />    at java.awt.Container.dispatchEventImpl(Container.java:2128)<br />    at java.awt.Window.dispatchEventImpl(Window.java:2492)<br />    at java.awt.Component.dispatchEvent(Component.java:4604)<br />    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:717)<br />
     at java.awt.EventQueue.access$400(EventQueue.java:82)<br />    at java.awt.EventQueue$2.run(EventQueue.java:676)<br />    at java.awt.EventQueue$2.run(EventQueue.java:674)<br />    at java.security.AccessController.doPrivileged(Native Method)<br />    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)<br />    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:97)<br />    at java.awt.EventQueue$3.run(EventQueue.java:690)<br />    at java.awt.EventQueue$3.run(EventQueue.java:688)<br />    at java.security.AccessController.doPrivileged(Native Method)<br />    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)<br />    at java.awt.EventQueue.dispatchEvent(EventQueue.java:687)<br />    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)<br />    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.ja
 va:211)<br />    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)<br />    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)<br />    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)<br />    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)</code></pre>


<hr />
<span class="footer"><p>You have received this notification because you have either subscribed to it, or are involved in it.<br />To change your notification preferences, please click here: <a class="external" href="https://projects.ecoinformatics.org/ecoinfo/my/account">https://projects.ecoinformatics.org/ecoinfo/my/account</a></p></span>
</body>
</html>