Bluemix 上业务规则执行的规则集的 XML 响应中的未知元素
unknownElement in XML response for ruleset executed by Business Rules on Bluemix
我在 Bluemix 上的业务规则服务上执行了一个规则集。 XML 响应有一个名为 "unknownElement" 的元素,它不在 WSDL 定义中。
< DecisionServiceResponse
xmlns="http://www.ilog.com/rules/DecisionService" >
< ilog.rules.outputString > ... < /ilog.rules.outputString >
< ilog.rules.firedRulesCount> ... < /ilog.rules.firedRulesCount >
< yourResponse xmlns="..">
< unknownElement xmlns="" >
...
< /unknownElement >
< /yourResponse >
< /DecisionServiceResponse >
发生这种情况是因为我在 XML 模式 (XSD) 中定义了规则集参数类型,但没有声明该类型的全局元素。
参数的类型 Foo 在 XSD XOM 中定义如下:
< schema xmlns=.. xmlns:tns=.. targetNamespace=.. >
< complexType name="Foo">
< attribute name="bar" type="string"></attribute >
< /complexType >
< /schema >
为了解决这个问题,我在 XSD:
中为该类型添加了一个全局元素
< schema xmlns=.. xmlns:tns=.. targetNamespace=.. >
< element name="FooElement" type="tns:Foo"></element >
< complexType name="Foo">
< attribute name="bar" type="string"></attribute >
< /complexType >
< /schema >
我在 Bluemix 上的业务规则服务上执行了一个规则集。 XML 响应有一个名为 "unknownElement" 的元素,它不在 WSDL 定义中。
< DecisionServiceResponse xmlns="http://www.ilog.com/rules/DecisionService" >
< ilog.rules.outputString > ... < /ilog.rules.outputString > < ilog.rules.firedRulesCount> ... < /ilog.rules.firedRulesCount > < yourResponse xmlns=".."> < unknownElement xmlns="" > ... < /unknownElement > < /yourResponse >
< /DecisionServiceResponse >
发生这种情况是因为我在 XML 模式 (XSD) 中定义了规则集参数类型,但没有声明该类型的全局元素。
参数的类型 Foo 在 XSD XOM 中定义如下:
< schema xmlns=.. xmlns:tns=.. targetNamespace=.. > < complexType name="Foo"> < attribute name="bar" type="string"></attribute > < /complexType > < /schema >
为了解决这个问题,我在 XSD:
中为该类型添加了一个全局元素< schema xmlns=.. xmlns:tns=.. targetNamespace=.. > < element name="FooElement" type="tns:Foo"></element > < complexType name="Foo"> < attribute name="bar" type="string"></attribute > < /complexType > < /schema >