LC 124 text, 2 proposals.

Based upon the straw poll that shows "option 4 : can set in endpoint
only if unset in types" a winner, and the "default on" straw poll option
of "Option 4: combo prop: def is on, set to off in types and endpoints
but endpoint can't set to ON", I offer 2 proposals:


Option #1: Default On


3 Types

3.1 The Types Component

A types component defines the types that constrain messages and faults.


The properties of the types component are as follows:

*         {ignoreUnknown} REQUIRED. An xs:binary. 


The "ignoreUnknown" property set to "true" denotes that the type accepts
without faulting additional _unknown items_ in messages using the type.
_Unknown items_ are attributes and elements not defined by the schema
for a particular element in the type.  _Unknown 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.  _Unknown 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.


3.2 Types XML Representation

(From current section 3 Types section)


  Add an ignoreUnknown attribute


3.3 Mapping Type's XML Representation to Component Properties

The mapping from the XML Representation of the types element information
item (see 3.2 XML Representation of types Component) to the properties
of the Types component is as described in Table 3-1. 


Table 3-1. Mapping from XML Representation to Types Component Properties




The actual value of the ignoreUnknown attribute information item if
present, and true otherwise. 



Extensions to 3.15 

  Add an {ignoreUnknown} Boolean property to the endpoint component.

  Add an ignoreUnknown attribute to <wsdl:endpoint>

  Map the attribute to the property by mapping the declared value of the
attribute into the property.  When the attribute is missing, the value
of the property is the value of the types component {ignoreUnknown}
property.  It is illegal for the endpoint component {ignoreUnknown}
property to be set to true if the types component {ignoreUnknown}
property is false.


Option #2: Default Off



Change Table 3-1 to say "and false otherwise"

Received on Thursday, 30 June 2005 19:18:48 UTC