The problem is with susbstitutionGroup element.

I have this in my xsd:
===
        <xs:element name="Condition" type="xacml:ConditionType"/>
        <xs:complexType name="ConditionType">
                <xs:sequence>
                        <xs:element ref="xacml:Expression"/>
                </xs:sequence>
        </xs:complexType>
        <!-- -->
        <xs:element name="Apply" type="xacml:ApplyType"
substitutionGroup="xacml:Expression"/>
        <xs:complexType name="ApplyType">
                <xs:complexContent>
                        <xs:extension base="xacml:ExpressionType">
                                <xs:sequence>
                                        <xs:element
ref="xacml:Expression" minOccurs="0" maxOccurs="unbounded"/>
                                </xs:sequence>
                                <xs:attribute name="FunctionId"
type="xs:anyURI" use="required"/>
                        </xs:extension>
                </xs:complexContent>
        </xs:complexType>
===

In my Java code, I get an instance of ConditionType element by parsing
the document. Then I try to retrieve an Expression element, which is in
my particular case is Apply element in the xml, and get a
ClassCastException.

Here's Java code:
===
ConditionType xbct = .... //Get an instance
ExpressionType xbxt = xbct.getExpression(); // here's an exception
thrown
===

Exception:
java.lang.ClassCastException:
org.apache.xmlbeans.impl.values.XmlAnyTypeImpl

Here's XML fragment:
===
        <Condition>
            <Apply FunctionId="bla-bla">

                        <!-- some content here -->
        </Apply>
    </Condition>
===

What am I doing wrong?

Thanks
argyn

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to