[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Possible Bug in ebMS V2.0 xsd schema
Hello,
I have been trying to validate soap-envelopes to the ebMS v2.0 schema
but I get schema errors when trying to compile the schema.
The xsd in question is:
http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd
<http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xs
d>
If I validate the xsd using http://www.w3.org/2001/03/webdata/xsv i get
this:
Schema representation errors
Detected during instance validation
http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd
:123:3: Invalid: non-deterministic content model for type None:
{Wildcard: ##other, lax}/{http://www.w3.org/2000/09/xmldsig#}:Reference
Direct link:
http://www.w3.org/2001/03/webdata/xsv?docAddrs=http%3A%2F%2Fwww.oasis-op
en.org%2Fcommittees%2Febxml-msg%2Fschema%2Fmsg-header-2_0.xsd&independen
t=on&style=xsl
The problem lies in the Acknowledgment element
<!-- ACKNOWLEDGMENT, for use in soap:Header element -->
<element name="Acknowledgment">
<complexType>
<sequence>
<element ref="tns:Timestamp"/>
<element ref="tns:RefToMessageId"/>
<element ref="tns:From" minOccurs="0"/>
<element ref="ds:Reference" minOccurs="0" maxOccurs="unbounded"/>
<any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
<attributeGroup ref="tns:headerExtension.grp"/>
<attribute ref="soap:actor"/>
</complexType>
</element>
There is an ambiguity between these 2:
<element ref="ds:Reference" minOccurs="0" maxOccurs="unbounded"/>
<any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/>
According to w3 (http://www.w3.org/TR/xmlschema-0/#any), ##other says
that any element not in the target namespace is allowed. Also, "lax"
says that all elements that has a schema will be validated. Due to this,
and because ds:Reference is optional, <element ref="ds:Reference"> IMHO
could be removed without making the schema less strict.
You can find a little longer discussion of it in the ebxml-dev archive:
http://lists.ebxml.org/archives/ebxml-dev/200810/msg00006.html
Regards,
Johannes Gustafsson
InExchange Factorum AB
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]