- From: David Orchard <dorchard@bea.com>
- Date: Wed, 29 Jun 2005 15:35:40 -0700
- To: <www-ws-desc@w3.org>
- Message-ID: <32D5845A745BFB429CBDBADA57CD41AF10BB213E@ussjex01.amer.bea.com>
My proposal for LC 124 is the similar to Jonathan's but service changed to types and using Option 2 listed in [1], which is an extension on the wsdl:types element. The "ignoreUnknown" property set to "true" denotes that the type accepts without faulting additional _unexpected items_ in messages using the type. _Unexpected items_ are attributes and elements not defined by the schema for a particular element in the input message. _Unexpected items_ may appear in any namespace including the targetNamespace of a known schema, as well as in a namespace for which no schema is currently known. _Unexpected items_ includes the descendents of the item, such any child elements, attributes and content. Note: one mechanism for accomplishing this is to validate a message after content that is not known has been removed. The unknown content may be identified by a W3C XML Schema processor. The [validity] property in the Post Schema-Validation Infoset will contain a "notKnown" value if unknown content is found. I think we both agreed (consensus on this?) that ignoreUnknown=true is the default. Current practice suggests that this behavior is implemented or enforced at the level of a toolkit. That seems to map most directly to the wsdl:types construct, as it is the binding of schema to a particular language via a toolkit that will be able or unable to do the ignoring. The extensibility or lack of is part of the type definition and independent of a particular service or endpoint location. Further, adding ignoreUnknowns to potentially large numbers of endpoints or operations is complicated and unnecessary given the using of binding toolkits. If it is necessary for a type to be used in both modes (ignore, don't ignore), then 2 wsdl files will achieve the functionality. Accordingly, I suggest: Add an {ignoreUnknown} Boolean property to the types component. Add an ignoreUnknown attribute to <wsdl:types> Map the attribute to the property by mapping the declared value of the attribute into the property, and when the attribute is missing, the value of the property is "true" (ignore unknown by default). Cheers, Dave [1] http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/0016.html
Received on Wednesday, 29 June 2005 22:35:45 UTC