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


Reply via email to