- From: Jacek Kopecky <jacek.kopecky@deri.org>
- Date: Fri, 02 Feb 2007 01:26:08 +0100
- To: Jonathan Marsh <jonathan@wso2.com>
- Cc: 'Youenn Fablet' <youenn.fablet@crf.canon.fr>, 'keith chapman' <keithgchapman@gmail.com>, 'www-ws-desc' <www-ws-desc@w3.org>
Jonathan, you're probably right, the reconstructing side knows from the WSDL that the uncited information is gone, so whatever it may substitute in order to make the message valid, it should ignore the substitutes anyway. It's their obligation to do it right. And your text is just so much easier to read. 8-) Sorry that I blocked this resolution today, Jacek On Thu, 2007-02-01 at 15:58 -0800, Jonathan Marsh wrote: > I'm not sure the minOccurs=0 language doesn't capture the sublety of the > test case giving rise to this issue, where minOccurs=2 and maxOccurs=2 yet > only 1 instance of the token must appearing in the URI. Here's my attempt > to accommodate that: > > "...any element not cited in the {http location} property MUST > be defined in the schema as nillable, or as not nillable but > with a minOccurs value less than or equal to the number of > occurrences (possibly zero) of that element name in the template, > or not nillable and with minOccurs greater than the number of > occurrences of that element in the template but with a default value." > > I see that this does preclude the situation where I have to choose between > nillable and a default value, as it simply outlaws schemas of that form. I > can live with this formulation. > > But I still prefer my proposal as amended in the telcon, as I don't think it > matters in practice what the precise shape of the XML looks like, as long as > it's valid (after all, we've instructed the binding to throw away > information that changes the shape pretty dramatically). > > When serializing an HTTP request method that does not allow an HTTP > message body, and when {http location ignore uncited} is true, any > element not cited in the {http location} property MUST be defined in > the schema as nillable [[, or has a default value, or appears no less > frequently than specified by the minOccurs value. ]]. > > Jonathan Marsh - http://www.wso2.com - http://auburnmarshes.spaces.live.com > > > > -----Original Message----- > > From: Jacek Kopecky [mailto:jacek.kopecky@deri.org] > > Sent: Thursday, February 01, 2007 9:40 AM > > To: Jonathan Marsh > > Cc: 'Youenn Fablet'; 'keith chapman'; 'www-ws-desc' > > Subject: RE: [SPAM] Issue with IgnoreUncidedEndpoint in LocationTemplate- > > 1G > > > > We just talked about adding "nillable or optional or have a default > > value" to the proposal. I would suggest we give an order to this: > > > > "...any element not cited in tje {http location} property MUST > > be defined in the schema as nillable, or as not nillable but > > with minOccurs=0, or not nillable and with minOccurs>0 but with > > a default value." > > > > In this way, the reconstituting side will, depending on the schema, > > stick it in as nil (if it's nillable), or omit it (if it's optional) or > > stick it in as empty, in this order. This assumes the reconstituting > > side knows the schema, but they are expected to know the WSDL so we're > > ok I think. > > > > Jacek > > > > On Wed, 2007-01-31 at 11:58 -0800, Jonathan Marsh wrote: > > > I don't think there's much practical difference between optional > > parameters > > > and nillable parameters - though we could debate the difference between > > > empty and null for months. > > > > > > I'll expand my proposal for CR146 to include optional elements and > > > situations like this one: > > > > > > When serializing an HTTP request method that does not allow an HTTP > > > message body, and when {http location ignore uncited} is true, any > > > element not cited in the {http location} property MUST be defined in > > > the schema as nillable [[ or appear no less frequently than specified > > > by the minOccurs value. ]]. > > > > > > For this test case, I think instead of adding nillable="true" I should > > have > > > set minOccurs="1". I'll go ahead and make that change. > > > > > > Jonathan Marsh - http://www.wso2.com - > > http://auburnmarshes.spaces.live.com > > > > > > > > > > -----Original Message----- > > > > From: Youenn Fablet [mailto:youenn.fablet@crf.canon.fr] > > > > Sent: Wednesday, January 31, 2007 1:31 AM > > > > To: keith chapman > > > > Cc: www-ws-desc; Jonathan Marsh > > > > Subject: Re: [SPAM] Issue with IgnoreUncidedEndpoint in > > LocationTemplate- > > > > 1G > > > > > > > > I am then wondering how the nillable approach is better compared to > > the > > > > first, simpler, solution that comes to mind, i.e. stating that > > > > ignored parameters must be optional elements in the schema? > > > > Youenn > > > > > > > > keith chapman wrote: > > > > > Hi, > > > > > > > > > > The schema of LocationTemplate-1G states the following, > > > > > > > > > > <xs:element name="time" type="xs:time" minOccurs="2" > > > > > maxOccurs="2" nillable="true"/> > > > > > > > > > > But in IgnoreUncidedEndpoint in LocationTemplate-1G, > > > > > whttp:location="datespace/{year}.html?start={time}". This is not > > > > > schema valid because there is only 1 time value. We can fix this by > > > > > changing the schema to minOccurs="1" or adding the end value to http > > > > > location. > > > > > > > > > > Thanks, > > > > > Keith. > > > > > > > > > > -- > > > > > Keith Chapman > > > > > WSO2 Inc. > > > > > Oxygen for Web Services Developers. > > > > > http://wso2.org/ > > > > > > >
Received on Friday, 2 February 2007 00:26:27 UTC