Hi Werner,
The method getBooleanValue() present in InitialValue.java
(InitialValue.java is created when I allow the warnings) is not
present when binding file is used and DeclareVariableInitialValue.java
is created. A lot of other methods that were present in
InitialValue.java such as getIntegerValue(), addBooleanValue() etc is
not present as well. In one of the manually written codes
--PlexilMarshaller.java-- getInitialValue().getBooleanValue() is
invoked. But if I change getInitialValue() to
getDeclareVariableInitialValue(), it doesn't help since the methods
are not present.
Is there anything wrong the way I did the binding or is something
wrong with the way things are being invoked in PlexilMarshaller.java?
Thanks
Sankalita
On Thu, Jul 17, 2008 at 3:00 PM, Werner Guttmann
<[EMAIL PROTECTED]> wrote:
> Hmm, just created Java classes using SCN trunk, and I cannot see any
> methods missing. What in particular is missing, if I may ask ?
>
> Regards
> Werner
>
> Sankalita wrote:
>> Hi,
>>
>> Sorry about that.
>>
>> Here's the part of the schema that generates the wrong class name
>> warning (" A class name generation conflict has occured between
>> element '/DeclareVariable/InitialValue' and element
>> '/DeclareArray/InitialValue'.")
>>
>> xsd:element name="DeclareVariable">
>> <xsd:complexType>
>> <xsd:sequence>
>> <xsd:element name="Name" type="xsd:NCName" />
>> <xsd:element name="Type" type="TypeValues"/>
>> <xsd:element name="InitialValue" minOccurs="0">
>> <xsd:complexType>
>> <xsd:group ref="Value"/>
>> </xsd:complexType>
>> </xsd:element>
>> </xsd:sequence>
>> </xsd:complexType>
>> </xsd:element>
>> <xsd:element name="DeclareArray">
>> <xsd:complexType>
>> <xsd:sequence>
>> <xsd:element name="Name" type="xsd:NCName" />
>> <xsd:element name="Type" type="TypeValues"/>
>> <xsd:element name="MaxSize" type="xsd:nonNegativeInteger"/>
>> <xsd:element name="InitialValue" minOccurs="0">
>> <xsd:complexType>
>> <xsd:choice>
>> <xsd:element ref="IntegerValue" maxOccurs="unbounded"/>
>> <xsd:element ref="RealValue" maxOccurs="unbounded"/>
>> <xsd:element ref="BooleanValue" maxOccurs="unbounded"/>
>> <xsd:element ref="StringValue" maxOccurs="unbounded"/>
>> </xsd:choice>
>> </xsd:complexType>
>> </xsd:element>
>> </xsd:sequence>
>> </xsd:complexType>
>> </xsd:element>
>>
>> I used the following in the binding file to resolve the class
>> generation conflict:
>> <elementBinding name="/DeclareVariable/InitialValue">
>> <java-class name="DeclareVariableInitialValue"/>
>> </elementBinding>
>> <elementBinding name="/DeclareArray/InitialValue">
>> <java-class name="DeclareArrayInitialValue"/>
>> </elementBinding>
>>
>> But, some of the methods are missing when the new files are created.
>>
>> Sankalita
>>
>>
>> On Wed, Jul 16, 2008 at 2:34 AM, Werner Guttmann
>> <[EMAIL PROTECTED]> wrote:
>>> Hi,
>>>
>>> can you pretty please strip things down to an XML schema (and binding
>>> file) that shows just the error and nothing else ?
>>>
>>> I am not sure about your expectations, but I do not want to be looking
>>> at an XML schema file that has hundreds of lines of code, and where I do
>>> not know where to find the essential information to assist you with your
>>> problem.
>>>
>>> If you want us to help you in our spare time, please minimize the
>>> information you push towards us. If that's not an option to you, please
>>> do consider taking up professional services as explained at the web site
>>> of Castor.
>>>
>>> Regards
>>> Werner
>>>
>>> Sankalita wrote:
>>>> Hi Werner,
>>>>
>>>> Thanks for the help. That solved the issue but the binding file led to
>>>> more errors. The new file that is being generated with the binding
>>>> doesn't seem to contain some of the methods. Is there a way to fix
>>>> that?
>>>>
>>>> Also, I have another problem regarding class name. The class name
>>>> generated is NodeRefDirType where the name should have been DirType.
>>>> This does not throw a warning for class name generation conflict. But
>>>> the generated files cannot be compiled because of this mismatch in
>>>> name.
>>>>
>>>> Below is the schema.
>>>>
>>>> Thanks!
>>>>
>>>> Sankalita
>>>>
>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>> <!--
>>>> Schema for PLEXIL language supported by UE. This is distinct from the
>>>> "blessed" schema found in plexil/schema/plexil.xsd, which is the
>>>> latest
>>>> official PLEXIL specification.
>>>> -->
>>>> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xml:lang="en">
>>>> <xsd:element name="PlexilPlan">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element ref="Node"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:simpleType name="TypeValues">
>>>> <xsd:restriction base="xsd:NMTOKEN">
>>>> <xsd:enumeration value="Integer"/>
>>>> <xsd:enumeration value="Real"/>
>>>> <xsd:enumeration value="Boolean"/>
>>>> <xsd:enumeration value="String"/>
>>>> <xsd:enumeration value="Array"/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> <xsd:simpleType name="NCNameOrEmpty">
>>>> <xsd:union memberTypes="xsd:NCName">
>>>> <xsd:simpleType>
>>>> <xsd:restriction base="xsd:string">
>>>> <xsd:enumeration value=""/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> </xsd:union>
>>>> </xsd:simpleType>
>>>> <xsd:element name="Node">
>>>> <xsd:complexType>
>>>> <xsd:all>
>>>> <xsd:element name="Comment" type="xsd:string" minOccurs="0"/>
>>>> <xsd:element ref="NodeId"/>
>>>> <xsd:element ref="StartCondition" minOccurs="0"/>
>>>> <xsd:element ref="RepeatCondition" minOccurs="0"/>
>>>> <xsd:element ref="PreCondition" minOccurs="0"/>
>>>> <xsd:element ref="PostCondition" minOccurs="0"/>
>>>> <xsd:element ref="InvariantCondition" minOccurs="0"/>
>>>> <xsd:element ref="EndCondition" minOccurs="0"/>
>>>> <xsd:element ref="SkipCondition" minOccurs="0"/>
>>>> <xsd:element name="Priority" type="xsd:nonNegativeInteger"
>>>> minOccurs="0"/>
>>>> <xsd:element name="Permissions" type="xsd:string" minOccurs="0"/>
>>>> <xsd:element ref="Interface" minOccurs="0"/>
>>>> <xsd:element ref="VariableDeclarations" minOccurs="0"/>
>>>> <xsd:element ref="NodeBody" minOccurs="0"/>
>>>> </xsd:all>
>>>> <xsd:attribute name="NodeType" use="required">
>>>> <xsd:simpleType>
>>>> <xsd:restriction base="xsd:NMTOKEN">
>>>> <xsd:enumeration value="NodeList"/>
>>>> <xsd:enumeration value="Command"/>
>>>> <xsd:enumeration value="Assignment"/>
>>>> <xsd:enumeration value="FunctionCall"/>
>>>> <xsd:enumeration value="Update"/>
>>>> <xsd:enumeration value="Request"/>
>>>> <xsd:enumeration value="Empty"/>
>>>> <xsd:enumeration value="LibraryNodeCall"/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> </xsd:attribute>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NodeId" type="xsd:NCName"/>
>>>> <xsd:attribute name="dir">
>>>> <xsd:simpleType>
>>>> <xsd:restriction base="xsd:NMTOKEN">
>>>> <xsd:enumeration value="parent"/>
>>>> <xsd:enumeration value="sibling"/>
>>>> <xsd:enumeration value="child"/>
>>>> <xsd:enumeration value="self"/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> </xsd:attribute>
>>>> <xsd:element name="NodeRef">
>>>> <xsd:complexType>
>>>> <xsd:simpleContent>
>>>> <xsd:extension base="NCNameOrEmpty">
>>>> <xsd:attribute ref="dir"/>
>>>> </xsd:extension>
>>>> </xsd:simpleContent>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NodeBody">
>>>> <xsd:complexType>
>>>> <xsd:choice>
>>>> <xsd:element ref="NodeList"/>
>>>> <xsd:element ref="Command"/>
>>>> <xsd:element ref="Assignment"/>
>>>> <xsd:element ref="FunctionCall"/>
>>>> <xsd:element ref="Update"/>
>>>> <xsd:element ref="Request"/>
>>>> <xsd:element ref="LibraryNodeCall"/>
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NodeList">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element ref="Node" minOccurs="0" maxOccurs="unbounded"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="StartCondition">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="RepeatCondition">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="PreCondition">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="PostCondition">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="InvariantCondition">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="EndCondition">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="SkipCondition">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Interface">
>>>> <xsd:complexType>
>>>> <xsd:all>
>>>> <xsd:element ref="In" minOccurs="0"/>
>>>> <xsd:element ref="InOut" minOccurs="0"/>
>>>> </xsd:all>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="In">
>>>> <xsd:complexType>
>>>> <xsd:group ref="DeclaredVariable" maxOccurs="unbounded"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="InOut">
>>>> <xsd:complexType>
>>>> <xsd:group ref="DeclaredVariable" maxOccurs="unbounded"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:group name="DeclaredVariable">
>>>> <xsd:choice>
>>>> <xsd:element ref="IntegerVariable"/>
>>>> <xsd:element ref="RealVariable"/>
>>>> <xsd:element ref="BooleanVariable"/>
>>>> <xsd:element ref="StringVariable"/>
>>>> <xsd:element name="ArrayVariable" type="xsd:NCName"/>
>>>> <xsd:element ref="ArrayElement"/>
>>>> </xsd:choice>
>>>> </xsd:group>
>>>> <xsd:group name="Value">
>>>> <xsd:choice>
>>>> <xsd:element ref="IntegerValue"/>
>>>> <xsd:element ref="RealValue"/>
>>>> <xsd:element ref="BooleanValue"/>
>>>> <xsd:element ref="StringValue"/>
>>>> </xsd:choice>
>>>> </xsd:group>
>>>> <xsd:element name="IntegerVariable" type="xsd:NCName"/>
>>>> <xsd:element name="RealVariable" type="xsd:NCName"/>
>>>> <xsd:element name="BooleanVariable" type="xsd:NCName"/>
>>>> <xsd:element name="StringVariable" type="xsd:NCName"/>
>>>> <xsd:element name="DeclareVariable">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element name="Name" type="xsd:NCName" />
>>>> <xsd:element name="Type" type="TypeValues"/>
>>>> <xsd:element name="InitialValue" minOccurs="0">
>>>> <xsd:complexType>
>>>> <xsd:group ref="Value"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="DeclareArray">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element name="Name" type="xsd:NCName" />
>>>> <xsd:element name="Type" type="TypeValues"/>
>>>> <xsd:element name="MaxSize" type="xsd:nonNegativeInteger"/>
>>>> <xsd:element name="InitialValue" minOccurs="0">
>>>> <xsd:complexType>
>>>> <xsd:choice>
>>>> <xsd:element ref="IntegerValue" maxOccurs="unbounded"/>
>>>> <xsd:element ref="RealValue" maxOccurs="unbounded"/>
>>>> <xsd:element ref="BooleanValue" maxOccurs="unbounded"/>
>>>> <xsd:element ref="StringValue" maxOccurs="unbounded"/>
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="VariableDeclarations">
>>>> <xsd:complexType>
>>>> <xsd:choice maxOccurs="unbounded">
>>>> <xsd:element ref="DeclareInteger"/>
>>>> <xsd:element ref="DeclareReal"/>
>>>> <xsd:element ref="DeclareBoolean"/>
>>>> <xsd:element ref="DeclareString"/>
>>>> <xsd:element ref="DeclareVariable"/>
>>>> <xsd:element ref="DeclareArray"/>
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="DeclareInteger">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element ref="IntegerVariable"/>
>>>> <xsd:element ref="IntegerValue" minOccurs="0"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="DeclareReal">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element ref="RealVariable"/>
>>>> <xsd:element ref="RealValue" minOccurs="0"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="DeclareBoolean">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element ref="BooleanVariable"/>
>>>> <xsd:element ref="BooleanValue" minOccurs="0"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="DeclareString">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element ref="StringVariable"/>
>>>> <xsd:element ref="StringValue" minOccurs="0"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Name">
>>>> <!-- of a command or lookup -->
>>>> <xsd:complexType>
>>>> <xsd:group ref="StringExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Command">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:group ref="DeclaredVariable" minOccurs="0"/>
>>>> <xsd:choice>
>>>> <xsd:element ref="Name"/>
>>>> <xsd:element name="CommandName" type="xsd:string"/>
>>>> <!-- for backw compatibility -->
>>>> </xsd:choice>
>>>> <xsd:element ref="Arguments" minOccurs="0"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Arguments">
>>>> <xsd:complexType>
>>>> <xsd:choice maxOccurs="unbounded">
>>>> <!-- could put expression here ?? -->
>>>> <xsd:element ref="IntegerValue"/>
>>>> <xsd:element ref="RealValue"/>
>>>> <xsd:element ref="BooleanValue"/>
>>>> <xsd:element ref="StringValue"/>
>>>> <xsd:group ref="DeclaredVariable"/>
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="FunctionCall">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:group ref="DeclaredVariable" minOccurs="0"/>
>>>> <xsd:choice>
>>>> <xsd:element ref="Name"/>
>>>> <xsd:element name="FunctionName" type="xsd:string"/>
>>>> <!-- for backw compatibility -->
>>>> </xsd:choice>
>>>> <xsd:element ref="Arguments" minOccurs="0"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Update">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element ref="Pair" minOccurs="0" maxOccurs="unbounded"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Pair">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element name="Name" type="xsd:NCName"/>
>>>> <xsd:choice>
>>>> <xsd:group ref="Value"/>
>>>> <xsd:group ref="DeclaredVariable"/>
>>>> <xsd:element ref="LookupNow"/>
>>>> </xsd:choice>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Request">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element ref="NodeId" minOccurs="0"/>
>>>> <!-- the context -->
>>>> <xsd:element ref="Pair" minOccurs="0" maxOccurs="unbounded"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="LibraryNodeCall">
>>>> <!-- TODO: maybe call this InlineNode -->
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element ref="NodeId"/>
>>>> <xsd:element name="RenameNodeId" type="xsd:NCName" minOccurs="0"/>
>>>> <xsd:element ref="Alias" minOccurs="0" maxOccurs="unbounded"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Alias">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element name="NodeParameter" type="xsd:NCName"/>
>>>> <xsd:choice>
>>>> <xsd:group ref="Value"/>
>>>> <xsd:group ref="DeclaredVariable"/>
>>>> </xsd:choice>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="IntegerValue">
>>>> <xsd:simpleType>
>>>> <xsd:union memberTypes="xsd:integer">
>>>> <xsd:simpleType>
>>>> <xsd:restriction base="xsd:NMTOKEN">
>>>> <xsd:enumeration value="UNKNOWN"/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> </xsd:union>
>>>> </xsd:simpleType>
>>>> </xsd:element>
>>>> <xsd:element name="RealValue">
>>>> <xsd:simpleType>
>>>> <xsd:union memberTypes="xsd:double">
>>>> <xsd:simpleType>
>>>> <xsd:restriction base="xsd:NMTOKEN">
>>>> <xsd:enumeration value="UNKNOWN"/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> </xsd:union>
>>>> </xsd:simpleType>
>>>> </xsd:element>
>>>> <xsd:element name="BooleanValue">
>>>> <xsd:simpleType>
>>>> <xsd:union memberTypes="xsd:boolean">
>>>> <xsd:simpleType>
>>>> <xsd:restriction base="xsd:NMTOKEN">
>>>> <xsd:enumeration value="UNKNOWN"/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> </xsd:union>
>>>> </xsd:simpleType>
>>>> </xsd:element>
>>>> <xsd:element name="StringValue">
>>>> <xsd:simpleType>
>>>> <xsd:union memberTypes="xsd:string">
>>>> <xsd:simpleType>
>>>> <xsd:restriction base="xsd:NMTOKEN">
>>>> <xsd:enumeration value="UNKNOWN"/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> </xsd:union>
>>>> </xsd:simpleType>
>>>> </xsd:element>
>>>> <xsd:element name="BooleanRHS">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NumericRHS">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="StringRHS">
>>>> <xsd:complexType>
>>>> <xsd:group ref="StringExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="LookupRHS">
>>>> <xsd:complexType>
>>>> <xsd:group ref="Lookup"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <!-- right now we allow assigning to the whole array; do we want to
>>>> assign to individual elements in the array?-->
>>>> <xsd:element name="Assignment">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:group ref="DeclaredVariable"/>
>>>> <xsd:choice>
>>>> <xsd:element ref="BooleanRHS"/>
>>>> <xsd:element ref="NumericRHS"/>
>>>> <xsd:element ref="StringRHS"/>
>>>> <xsd:element ref="LookupRHS"/>
>>>> <!-- allows lookups to return multiple values of different types-->
>>>> </xsd:choice>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <!-- assign multiple vars at the same time: should be only for lookups
>>>> ???-->
>>>> <xsd:group name="BooleanExpression">
>>>> <xsd:choice>
>>>> <xsd:element ref="OR"/>
>>>> <xsd:element ref="XOR"/>
>>>> <xsd:element ref="AND"/>
>>>> <xsd:element ref="NOT"/>
>>>> <xsd:element ref="IsKnown"/>
>>>> <xsd:element ref="GT"/>
>>>> <xsd:element ref="GE"/>
>>>> <xsd:element ref="LT"/>
>>>> <xsd:element ref="LE"/>
>>>> <xsd:element ref="EQBoolean"/>
>>>> <xsd:element ref="EQNumeric"/>
>>>> <xsd:element ref="EQInternal"/>
>>>> <xsd:element ref="EQString"/>
>>>> <xsd:element ref="NEBoolean"/>
>>>> <xsd:element ref="NENumeric"/>
>>>> <xsd:element ref="NEInternal"/>
>>>> <xsd:element ref="NEString"/>
>>>> <xsd:element ref="BooleanVariable"/>
>>>> <xsd:element ref="BooleanValue"/>
>>>> <xsd:group ref="Lookup"/>
>>>> <xsd:element ref="ArrayElement"/>
>>>> </xsd:choice>
>>>> </xsd:group>
>>>> <xsd:element name="IsKnown">
>>>> <xsd:complexType>
>>>> <xsd:choice>
>>>> <xsd:group ref="DeclaredVariable"/>
>>>> <xsd:group ref="Lookup"/>
>>>> <xsd:element ref="NodeStateVariable"/>
>>>> <xsd:element ref="NodeOutcomeVariable"/>
>>>> <xsd:element ref="NodeTimepointValue"/>
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="OR">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression" minOccurs="0"
>>>> maxOccurs="unbounded"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="XOR">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression" minOccurs="0"
>>>> maxOccurs="unbounded"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="AND">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression" minOccurs="0"
>>>> maxOccurs="unbounded"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NOT">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:group ref="BooleanExpression"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="GT">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="GE">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="LT">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="LE">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="EQBoolean">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="EQNumeric">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="EQInternal">
>>>> <xsd:complexType>
>>>> <xsd:choice>
>>>> <xsd:group ref="NodeState" minOccurs="2" maxOccurs="2"/>
>>>> <xsd:group ref="NodeOutcome" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="EQString">
>>>> <xsd:complexType>
>>>> <xsd:group ref="StringExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NEBoolean">
>>>> <xsd:complexType>
>>>> <xsd:group ref="BooleanExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NENumeric">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NEInternal">
>>>> <xsd:complexType>
>>>> <xsd:choice>
>>>> <xsd:group ref="NodeState" minOccurs="2" maxOccurs="2"/>
>>>> <xsd:group ref="NodeOutcome" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NEString">
>>>> <xsd:complexType>
>>>> <xsd:group ref="StringExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:group name="NodeState">
>>>> <xsd:choice>
>>>> <xsd:element ref="NodeStateVariable"/>
>>>> <xsd:element ref="NodeStateValue"/>
>>>> </xsd:choice>
>>>> </xsd:group>
>>>> <xsd:element name="NodeStateVariable">
>>>> <xsd:complexType>
>>>> <xsd:choice>
>>>> <xsd:element ref="NodeRef"/>
>>>> <xsd:element ref="NodeId"/>
>>>> <!-- for backw compatibility -->
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NodeStateValue">
>>>> <xsd:simpleType>
>>>> <xsd:restriction base="xsd:NMTOKEN">
>>>> <xsd:enumeration value="WAITING"/>
>>>> <xsd:enumeration value="EXECUTING"/>
>>>> <xsd:enumeration value="FINISHING"/>
>>>> <xsd:enumeration value="FAILING"/>
>>>> <xsd:enumeration value="ITERATION_ENDED"/>
>>>> <xsd:enumeration value="FINISHED"/>
>>>> <xsd:enumeration value="INACTIVE"/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> </xsd:element>
>>>> <xsd:group name="NodeOutcome">
>>>> <xsd:choice>
>>>> <xsd:element ref="NodeOutcomeVariable"/>
>>>> <xsd:element ref="NodeOutcomeValue"/>
>>>> </xsd:choice>
>>>> </xsd:group>
>>>> <xsd:element name="NodeOutcomeVariable">
>>>> <xsd:complexType>
>>>> <xsd:choice>
>>>> <xsd:element ref="NodeRef"/>
>>>> <xsd:element ref="NodeId"/>
>>>> <!-- for backw compatibility -->
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="NodeOutcomeValue">
>>>> <xsd:simpleType>
>>>> <xsd:restriction base="xsd:NMTOKEN">
>>>> <xsd:enumeration value="SUCCESS"/>
>>>> <xsd:enumeration value="FAILURE"/>
>>>> <xsd:enumeration value="SKIPPED"/>
>>>> <xsd:enumeration value="INFINITE_LOOP"/>
>>>> <xsd:enumeration value="UNKNOWN"/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> </xsd:element>
>>>> <xsd:element name="NodeTimepointValue">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:choice>
>>>> <xsd:element ref="NodeRef"/>
>>>> <xsd:element ref="NodeId"/>
>>>> <!-- for backw compatibility -->
>>>> </xsd:choice>
>>>> <xsd:element ref="NodeStateValue"/>
>>>> <xsd:element ref="Timepoint"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Timepoint">
>>>> <xsd:simpleType>
>>>> <xsd:restriction base="xsd:NMTOKEN">
>>>> <xsd:enumeration value="START"/>
>>>> <xsd:enumeration value="END"/>
>>>> </xsd:restriction>
>>>> </xsd:simpleType>
>>>> </xsd:element>
>>>> <xsd:group name="StringExpression">
>>>> <xsd:choice>
>>>> <xsd:element ref="StringVariable"/>
>>>> <xsd:element ref="StringValue"/>
>>>> <xsd:element ref="Concat"/>
>>>> <xsd:group ref="Lookup"/>
>>>> <xsd:element ref="ArrayElement"/>
>>>> </xsd:choice>
>>>> </xsd:group>
>>>> <xsd:element name="Concat">
>>>> <!-- should it be in core Plexil? -->
>>>> <xsd:complexType>
>>>> <xsd:group ref="StringExpression" minOccurs="2"
>>>> maxOccurs="unbounded"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:group name="NumericExpression">
>>>> <xsd:choice>
>>>> <xsd:element ref="ADD"/>
>>>> <xsd:element ref="SUB"/>
>>>> <xsd:element ref="MUL"/>
>>>> <xsd:element ref="DIV"/>
>>>> <xsd:element ref="SQRT"/>
>>>> <xsd:element ref="ABS"/>
>>>> <xsd:element ref="IntegerVariable"/>
>>>> <xsd:element ref="RealVariable"/>
>>>> <xsd:element ref="IntegerValue"/>
>>>> <xsd:element ref="RealValue"/>
>>>> <xsd:group ref="Lookup"/>
>>>> <!-- only for lookups that return ONE value -->
>>>> <xsd:element ref="NodeTimepointValue"/>
>>>> <!-- read operations for arrays-->
>>>> <xsd:element name="ArraySize" type="xsd:NCName"/>
>>>> <xsd:element name="ArrayMaxSize" type="xsd:NCName"/>
>>>> <xsd:element ref="ArrayElement"/>
>>>> </xsd:choice>
>>>> </xsd:group>
>>>> <xsd:element name="ArrayElement">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element name="Name" >
>>>> <xsd:complexType>
>>>> <xsd:group ref="StringExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Index">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="ADD">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression" minOccurs="2"
>>>> maxOccurs="unbounded"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="SUB">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="MUL">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression" minOccurs="2"
>>>> maxOccurs="unbounded"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="DIV">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression" minOccurs="2" maxOccurs="2"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="SQRT">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="ABS">
>>>> <xsd:complexType>
>>>> <xsd:group ref="NumericExpression"/>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:group name="Lookup">
>>>> <xsd:choice>
>>>> <xsd:element ref="LookupWithFrequency"/>
>>>> <xsd:element ref="LookupOnChange"/>
>>>> <xsd:element ref="LookupNow"/>
>>>> </xsd:choice>
>>>> </xsd:group>
>>>> <xsd:element name="LookupWithFrequency">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:choice>
>>>> <xsd:element ref="Name"/>
>>>> <!-- for backw compatibility -->
>>>> <xsd:element name="StateName" type="xsd:string"/>
>>>> </xsd:choice>
>>>> <xsd:element ref="Frequency"/>
>>>> <xsd:element ref="Arguments" minOccurs="0"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Frequency">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:element ref="Low"/>
>>>> <xsd:element ref="High" minOccurs="0"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Low">
>>>> <xsd:complexType>
>>>> <xsd:choice>
>>>> <xsd:element ref="RealValue"/>
>>>> <xsd:element ref="RealVariable"/>
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="High">
>>>> <xsd:complexType>
>>>> <xsd:choice>
>>>> <xsd:element ref="RealValue"/>
>>>> <xsd:element ref="RealVariable"/>
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="LookupOnChange">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:choice>
>>>> <xsd:element ref="Name"/>
>>>> <xsd:element name="StateName" type="xsd:string"/>
>>>> <!-- for backw compatibility -->
>>>> </xsd:choice>
>>>> <xsd:element ref="Tolerance" minOccurs="0"/>
>>>> <xsd:element ref="Arguments" minOccurs="0"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="Tolerance">
>>>> <xsd:complexType>
>>>> <xsd:choice>
>>>> <xsd:element ref="RealValue"/>
>>>> <xsd:element ref="RealVariable"/>
>>>> </xsd:choice>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> <xsd:element name="LookupNow">
>>>> <xsd:complexType>
>>>> <xsd:sequence>
>>>> <xsd:choice>
>>>> <xsd:element ref="Name"/>
>>>> <xsd:element name="StateName" type="xsd:string"/>
>>>> <!-- for backw compatibility -->
>>>> </xsd:choice>
>>>> <xsd:element ref="Arguments" minOccurs="0"/>
>>>> </xsd:sequence>
>>>> </xsd:complexType>
>>>> </xsd:element>
>>>> </xsd:schema>
>>>>
>>>>
>>>> On Tue, Jul 8, 2008 at 12:29 AM, Werner Guttmann
>>>> <[EMAIL PROTECTED]> wrote:
>>>>> Good morning Sankalita,
>>>>>
>>>>> you have an erroneous ';' in the first line of your <binding> element.
>>>>> Simply remove that one, and you should be fine. Any XML editor should
>>>>> highlight such problems by definition.
>>>>>
>>>>> Werner
>>>>>
>>>>> Sankalita wrote:
>>>>>> Hi,
>>>>>>
>>>>>> I've been trying to create a binding file to resolve class name
>>>>>> generator conflicts for castor. I'm ending up with the following
>>>>>> error:
>>>>>>
>>>>>> Element type "binding" must be followed by either attribute
>>>>>> specifications, ">" or "/>".{File:
>>>>>> file:///C:/Work/RSE/Eclipse_workspace/Plexil2JPF/binding.xml; line: 1;
>>>>>> column: 63}
>>>>>> org.exolab.castor.xml.MarshalException: Element type "binding" must be
>>>>>> followed by either attribute specifications, ">" or "/>".{File:
>>>>>> file:///C:/Work/RSE/Eclipse_workspace/Plexil2JPF/binding.xml; line: 1;
>>>>>> column: 63}
>>>>>>
>>>>>> I'm new to castor and binding files. Am I missing something very basic?
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>>
>>>>>> Here's the binding file content:
>>>>>> <binding xmlns="http://www.castor.org/SourceGenerator/Binding";
>>>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>>>>>> defaultBinding="element">
>>>>>>
>>>>>>
>>>>>> <elementBinding name="/Name">
>>>>>> <java-class name="Name"/>
>>>>>> </elementBinding>
>>>>>>
>>>>>> <elementBinding name="/ArrayElement/Name">
>>>>>> <java-class name="ArrayElementName"/>
>>>>>> </elementBinding>
>>>>>>
>>>>>> <elementBinding name="/DeclareVariable/InitialValue">
>>>>>> <java-class name="DeclareVariableInitialValue"/>
>>>>>> </elementBinding>
>>>>>>
>>>>>> <elementBinding name="/DeclareArray/InitialValue">
>>>>>> <java-class name="DeclareArrayInitialValue"/>
>>>>>> </elementBinding>
>>>>>>
>>>>>> </binding>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe from this list, please visit:
>>>>>>
>>>>>> http://xircles.codehaus.org/manage_email
>>>>>>
>>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe from this list, please visit:
>>>>>
>>>>> http://xircles.codehaus.org/manage_email
>>>>>
>>>>>
>>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe from this list, please visit:
>>>>
>>>> http://xircles.codehaus.org/manage_email
>>>>
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe from this list, please visit:
>>>
>>> http://xircles.codehaus.org/manage_email
>>>
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe from this list, please visit:
>>
>> http://xircles.codehaus.org/manage_email
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>
> http://xircles.codehaus.org/manage_email
>
>
>
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email