- From: David Orchard <dorchard@bea.com>
- Date: Wed, 20 Jul 2005 11:47:05 -0700
- To: "Arthur Ryman" <arthur.ryman@gmail.com>, <www-ws-desc@w3.org>
If the customer has <nad:country> in their type library and this gets validated, then what's the problem? If they don't have <nad:country> then it gets ignored. If they want to say shipTo must have <and:country>, then they come up with a new type and the one with <nad:country> will fail because it's not valid. This is all goodness. Cheers, Dave > -----Original Message----- > From: www-ws-desc-request@w3.org [mailto:www-ws-desc-request@w3.org] On > Behalf Of Arthur Ryman > Sent: Tuesday, July 19, 2005 8:02 PM > To: www-ws-desc@w3.org > Subject: LC124: Comment on V2S and [validity]=notKnown > > > I reviewed Henry Thomas' presentation [1] that described the validate > twice with surgery (V2S) algorithm for ignoring additive content. This > algorithm makes certain assumptions about the additive content, which > I think need examination. > > The basis of V2S is that a schema processor attempts to validate a > message and in the process makes contributions to the PSVI. The key > contribution being the [validity] property which can be valid, > invalid, or notKnown. The later means that validation has not been > attempted because, e.g. there is no declaration available for the > element. > > Consider the following example from Henry's presentation: > > <shipTo> > <ad:name>HM Queen</ad:name> > <ad:street>Buck House</ad:street> > <ad:city>London</ad:city> > <nad:country>UK</nad:country> > </shipTo> > > Here it is supposed that the <nad:country> element has been added to > version 2 of the schema for the message. After attempting validation, > the <nad:country> element has [validity]=notKnown, presumably because > the processor only has version 1 of the schema available. The surgery > step chops this element out, and then the message is valid wrt version > 1. > > I am troubled by this approach because it assumes you will only add > elements that are brand new, i.e. are not part of version 1 or any > schema it references. > > I work with one customer that defines standard elements for common > data items such as customer ids, account numbers, etc. These are used > as the building blocks of messages. It seems very likely to me that > this customer may want to add one of these predefined elements to an > existing message. Even Henry's example suggest this type of > versioning. Adding something as standard as a country would likely be > done using an existing element declaration. So the element is in fact > known in this case, and the first validation pass would mark it as > [validity]=valid. The enclosing <shipTo> would still be invalid since > <nad:country> is not part of its content model. In this case V2S fails > to give the desired result. > > I think we need to carefully understand the assumptions behind V2S and > decide if they are useful enough in practice to be enshrined in WSDL > 2.0. > > [1] http://www.markuptechnology.com/XMLEu2004/
Received on Wednesday, 20 July 2005 18:47:17 UTC