Sankalita,
can you please create a new Jira issue and attach all files required for
me to re-run your problem ? Please try to keep things as minimal as
possible, as I do not have the time to look at hundreds of classes to
spot a problem.
Regards
Werner
Sankalita wrote:
> 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
>
>
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email