OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-msg-comment message

[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]