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