- From: Arthur Ryman <ryman@ca.ibm.com>
- Date: Wed, 20 Jul 2005 01:06:30 -0400
- To: <paul.downey@bt.com>
- Cc: www-ws-desc@w3.org, www-ws-desc-request@w3.org
- Message-ID: <OF7BC04201.F0373740-ON85257044.001A85F6-85257044.001C0C90@ca.ibm.com>
Paul, Thx for the recap. I am concerned about the informality of your evolution rules. XML Schema is an incredibly complex spec. My concern is that it is not obvious that there is always a unique way to throw away unexpected content in order to obtain a valid message. This concerns me because it could lead to interoperability problems, i.e. a C# client doing something different than a Java client. As I pointed out, the V2S schema makes assumptions that the added elements are not part of a known schema. We need to nail down the restrictions. Arthur Ryman, Rational Desktop Tools Development phone: +1-905-413-3077, TL 969-3077 assistant: +1-905-413-2411, TL 969-2411 fax: +1-905-413-4920, TL 969-4920 mobile: +1-416-939-5063, text: 4169395063@fido.ca intranet: http://labweb.torolab.ibm.com/DRY6/ <paul.downey@bt.com> Sent by: www-ws-desc-request@w3.org 07/15/2005 12:56 PM To <www-ws-desc@w3.org> cc Subject LC124 - Support of evolution of messages described in Schema 1.0 Ahead of next week's F2F here's my best understanding of the current state of proposals and discussion for LC124. http://www.w3.org/2002/ws/desc/4/lc-issues/issues.html#LC124 ** Description and Justification ** Original Proposal (Paul): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/0012 In essence, there is no way to describe the common and natural evolution of an XML structure using XML Schema 1.0, eg.: v1: <customer> <firstName>Paul</firstName> </customer> v2: <customer> <firstName>Paul</firstName> <lastName>Downey</lastName> </customer> v3: <customer> <firstName>Paul</firstName> <lastName>Downey</lastName> <middleName>Sumner</middleName> </customer> whereby a format may evolve remaining backwards compatible following three simple rules: - make additional items optional - don't delete items - don't change the meaning of existing items ** Proposed Text ** Latest evolution (Jonathan): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/0091 """ The "ignoreUnknown" property set to "true" denotes that the service accepts without faulting additional _unexpected items_ in messages sent to that service. _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. """ The same assertion, or a parallel one should denote that the service is liable to insert unexpected items in messages it emits which a client should accept. resulting from text from DaveO: http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/0083 and Paul: http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/0036 ** Proposed Syntax ** There is uniform agreement that a ignoreUnknown flag would be required to control this feature, true meaning ignoreUnknowns, false meaning strict validation applies. Options for syntax: http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/0097.html ** Discussion ** Berlin F2F, 1 June 2005, overview of issue: http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/att-0002/20050601-ws-desc-minutes.html#item11 Telcon 9 June 2005, agreed not to close with no action: http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/att-0015/20050609-ws-desc-minutes.html#item06 Telcon 16 June 2005, validate twice and IP: http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/att-0059/20050616-ws-desc-minutes.html#item09 W3C Workshop on XML Schema 1.0 User Experiences, 22 June 2005: Slides (Paul): http://www.w3.org/2005/06/22-schema-workshop/LC124/slides.html Minutes: http://www.w3.org/2005/06/22-xsd-user-minutes.html#item03 Chairs' summary report: http://www.w3.org/2005/06/21-schema-workshop/chairs-report.html#Versioning Telcon 23 June 2005, feedback from workshop: http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/att-0085/20050623-ws-desc-minutes.html#item04 Telcon 30 June 2005, syntax, precedence of flag on types and endpoint: http://lists.w3.org/Archives/Public/www-ws-desc/2005Jul/att-0015/20050630-ws-desc-minutes.html#item04 ** Some Mailing List Concerns ** That unknowns might be ambiguous (Jonathan): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/0039.html You have to be able to write a schema which describes the V2 and V1 messages, UPA actually helps here (Paul): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jun/0055.html Lack of formal text to cite (Arthur): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jul/0026.html Similar issues as with SOAP Encoding (Arthur): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jul/0019.html But you can still validate (Paul): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jul/0057 psvi:notKnown != unknown (Arthur): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jul/0044.html Explanation (Sandy Gao): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jul/0050.html Problems with ignoreUnknows (soap Headers and body element) (Amy): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jul/0007.html Attempt at a reply (Paul): http://lists.w3.org/Archives/Public/www-ws-desc/2005Jul/0009.html Evolution is a narrow use-case (Arthur, Umit and Pete Hendry (Cape)) various emails, refuted by Paul :-) -- Paul
Received on Wednesday, 20 July 2005 05:06:38 UTC