Proposal for issue 277 - part 2

Hello all,

This is the second part of a proposal for resolving issue 277 [1] (half 
dealing with action attributed to Jean-Jacques)
This second part is about the use of many Namespaces in the spec, which 
may be unwieldy and unnecessary.

Here is a list of the namespaces used in the spec (both part 1 [2] and 
part 2 [3]) and a summary of their use:

1) env -- http://www.w3.org/2002/06/soap-envelope
Used for Envelope related EII and AII

2) flt -- http://www.w3.org/2002/06/soap-faults
This is the namespace for the SOAP header block generated by 
mustUnderstand faults.
Used for NotUnderstood eii

3) upg -- http://www.w3.org/2002/06/soap-upgrade
This is the namespace for the SOAP header block generated by 
VersionMismatch faults.
Used for:
Upgrade eii
Envelope eii (child of Upgrade eii)

4) enc -- http://www.w3.org/2002/06/soap-encoding
This is the namespace for SOAP encoding.
Used for:
itemType aii.
arraySize aii.

5) rpc -- http://www.w3.org/2002/06/soap-rpc
This is the namespace for RPC.
Used for:
result eii.
ProcedureNotPresent fault Subcode
BadArguments fault Subcode

6) context -- 
http://www.w3.org/2002/06/soap/bindingFramework/ExchangeContext/
This namespace is used for defining properties which apply to a message 
exchange context:
ExchangePatternName
FailureReason
Role
State

7) mep -- http://www.w3.org/2002/06/soap/mep/
Not used.

8) fail -- http://www.w3.org/2002/06/soap/mep/FailureReasons/
Not used any more.

9) reqres -- http://www.w3.org/2002/06/soap/mep/request-response/
This is the namespace for the request-response MEP.
It is used for defining properties which apply to the request-response 
mep (those properties are also used in the SOAP Response MEP):
reqres:OutboundMessage
reqres:InboundMessage
reqres:ImmediateDestination
reqres:ImmediateSender

10) webmeth -- http://www.w3.org/2002/06/soap/features/web-method/
This is the namespace for the Web Method feature.
It is used for defining one property:
webmeth:Method


Proposal
--------
Here is a proposal for dealing with all those namespaces. This proposal 
was cut into pieces to allow a finer grained decision process.

(i) Keep http://www.w3.org/2002/06/soap-envelope namespace

(ii) Merge http://www.w3.org/2002/06/soap-faults namespace and 
http://www.w3.org/2002/06/soap-upgrade namespace into 
http://www.w3.org/2002/06/soap-envelope namespace.
<rationale>
This remove two namespaces. Both are used in the main part of the SOAP 
1.2 specification and are tightly linked with the processing of SOAP 
messages.
</rationale>

(iii) Keep http://www.w3.org/2002/06/soap-encoding namespace.
<rationale>
This namespace is used for defining aii in an independant part of the spec.
</rationale>

(iv) Keep http://www.w3.org/2002/06/soap-rpc namespace.
<rationale>
This namespace is used for defining an eii in an independant part of the 
spec.
</rationale>

(v) Remove http://www.w3.org/2002/06/soap/mep/ namespace and 
http://www.w3.org/2002/06/soap/mep/FailureReasons/ namespace.
<rationale>
They are not used anymore.
</rationale>

(vi) Define properties using URIs and not QNames (see first part of 
proposal), and remove 
http://www.w3.org/2002/06/soap/bindingFramework/ExchangeContext/ 
namespace, http://www.w3.org/2002/06/soap/mep/request-response/ 
namespace and http://www.w3.org/2002/06/soap/features/web-method/ 
namespace which are only used for defining properties.
<rationale>
It seems better to identify properties with URIs than with QNames.
</rationale>

Conclusion
----------
Depending on the choices made over this proposal, we can have from 3 to 
8 namespaces defined in the spec.

Best regards,

Hervé.


[1] http://www.w3.org/2000/xp/Group/xmlp-lc-issues.html#x277
[2] http://www.w3.org/2000/xp/Group/2/06/LC/soap12-part1.xml
[3] http://www.w3.org/2000/xp/Group/2/06/LC/soap12-part2.xml

Received on Monday, 14 October 2002 11:03:52 UTC