W3C home > Mailing lists > Public > www-ws-desc@w3.org > January 2007

Re: Clarify 'scope' of {element declarations} and {type definitions} re SparqlQuerySimplified-1G

From: Roberto Chinnici <Roberto.Chinnici@Sun.COM>
Date: Wed, 10 Jan 2007 09:53:40 -0800
To: Arthur Ryman <ryman@ca.ibm.com>
Cc: Jonathan Marsh <jonathan@wso2.com>, "'John Kaputin'" <KAPUTIN@uk.ibm.com>, woden-dev@ws.apache.org, www-ws-desc@w3.org, www-ws-desc-request@w3.org
Message-id: <45A52824.9050402@sun.com>

This should be a new issue. I'm not convinced by the arguments in this 
thread.

I find the argument by analogy with XML Schema unconvincing. When it 
comes to WSDL importing/including WSDL, it's fine to base our approach 
on the schema importing/including schema case, but the WSDL importing 
schema scenario is qualitatively different, since we're talking of 
cross-description-language importing.

Given that we are defining the WSDL spec, not the XML Schema spec, we 
don't need to bother with validity of the component model at the schema 
level. So schema components that are not referenceable by WSDL 
components need not appear in the WSDL component model, because they 
don't affect WSDL validity per se.

This is the case of components defined by a schema S1 imported by a 
schema S2 which is in turn imported by WSDL document W. It's only if W 
imports S1 that those components need to appear in the component model.

This approach also makes the rules in 2.17 of part 1 [1] stronger, 
because the {element declarations} and {type definitions} sets will then 
be of minimal size (= they will not contain any components that are not 
referenceable). This seems a desirable property for an interchange 
format too: to contain all elements/types which could ever be used, but 
not more.

[1] 
http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl20/wsdl20.html?content-type=text/html;%20charset=utf-8#qnameres

Thanks,
Roberto

Arthur Ryman wrote:
>
> ++1
>
> Also, WSDL 2.0 works that way. If A.wsdl imports namespace B then any 
> components in B's component model are also in A's, otherwise you'd get 
> dangling component references.
>
> Arthur Ryman,
> IBM Software Group, Rational Division
>
> blog: http://ryman.eclipsedevelopersjournal.com/
> 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
>
>
> *"Jonathan Marsh" <jonathan@wso2.com>*
> Sent by: www-ws-desc-request@w3.org
>
> 01/09/2007 05:31 PM
>
> 	
> To
> 	Arthur Ryman/Toronto/IBM@IBMCA, <woden-dev@ws.apache.org>
> cc
> 	"'John Kaputin'" <KAPUTIN@uk.ibm.com>, <woden-dev@ws.apache.org>, 
> <www-ws-desc@w3.org>
> Subject
> 	RE: Clarify 'scope' of {element declarations} and {type definitions} 
> re SparqlQuerySimplified-1G
>
>
>
> 	
>
>
>
>
>
> +1. The visibility of imported components for the purpose of resolving 
> QName references is a separate matter than the presence of imported 
> components in the component model. Not very obvious, but AIUI that’s 
> the way schema works and we’re following down that path for better or 
> worse.
>
> *Jonathan Marsh* - http://www.wso2.com <http://www.wso2.com/> - 
> http://auburnmarshes.spaces.live.com 
> <http://auburnmarshes.spaces.live.com/>
>
>
> *From:* www-ws-desc-request@w3.org [mailto:www-ws-desc-request@w3.org] 
> *On Behalf Of *Arthur Ryman*
> Sent:* Tuesday, January 09, 2007 12:53 PM*
> To:* woden-dev@ws.apache.org*
> Cc:* John Kaputin; woden-dev@ws.apache.org; www-ws-desc@w3.org*
> Subject:* Re: Clarify 'scope' of {element declarations} and {type 
> definitions} re SparqlQuerySimplified-1G
>
>
> John,
>
> As we discussed on the Woden telecon, the component model should 
> create ElementDeclaration and TypeDefinition components for all the 
> element and type definitions that are contained in any schema 
> (inlined, imported, or included).
>
> Arthur Ryman,
> IBM Software Group, Rational Division
>
> blog: http://ryman.eclipsedevelopersjournal.com/
> 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
>
> *"John Kaputin (gmail)" <jakaputin@gmail.com>*
>
> 01/09/2007 08:02 AM
>
>
> Please respond to
> woden-dev@ws.apache.org
>
>
> 	
> To
> 	www-ws-desc@w3.org
> cc
> 	woden-dev@ws.apache.org, "John Kaputin" <KAPUTIN@uk.ibm.com>
> Subject
> 	Clarify 'scope' of {element declarations} and {type definitions} re 
> SparqlQuerySimplified-1G
>
>
>
> 	
>
>
>
>
>
>
> I would like clarification the WSDL 2.0 testcase 
> SparqlQuerySimplified-1G and which schema element declarations should 
> be present in the {element declarations} property of the Description 
> component. I think I had a conversation about this issue with Jonathan 
> and Arthur driving out to Niagra Falls at the July interop.
>
> The baseline component model interchange format for this testcase 
> includes an element declaration whose namespace is not inlined or 
> imported within the WSDL document's <types> element.
>
> Baseline sparql-protocol-query.canonical.wsdlcm contains this item:
>
> <elementDeclarationComponent xml:id="c22">
> <name>
> <base:namespaceName> http://www.w3.org/1999/02/22-rdf-syntax-ns# 
> <http://www.w3.org/1999/02/22-rdf-syntax-ns> </base:namespaceName>
> <base:localName>RDF</base:localName>
> </name>
> <system> http://www.w3.org/2001/XMLSchema 
> <http://www.w3.org/2001/XMLSchema> </system>
> </elementDeclarationComponent>
>
> This element declaration is defined in a schema which is imported by 
> the <xs:schema> element inlined within the <types> element of 
> sparql-protocol-query.wsdl. However, the namespace 
> http://www.w3.org/1999/02/22-rdf-syntax-ns# 
> <http://www.w3.org/1999/02/22-rdf-syntax-ns> is not xs:imported 
> directly within the <types> element.
>
> According to Part 1, section 3.1 Using W3C XML Schema Description 
> Language:
> Schema-0016 "A WSDL 2.0 document MUST NOT refer to XML Schema 
> components in a given namespace unless an xs:import or xs:schema 
> element information item for that namespace is present ..."
>
> In implementing Woden, I interpreted this to mean that {element 
> declarations} and {type definitions} only contain schema components 
> whose namespace is inlined or imported directly within the <types> 
> element. The Woden sparql-protocol-query.canonical.wsdlcm file refects 
> this, in that the element declaration mentioned above is not present 
> (and Woden is failing the testcase accordingly).
>
> However, it may be that the intention of the WSDL 2.0 authors is that 
> ALL global element declarations and type definitions referenceable by 
> XML Schema MUST be included in {element declarations} and {type 
> definitions}, regardless of whether they are inlined or imported 
> directly within <types> or whether they are 'nested' imports within 
> those directly inlined or imported schemas, and that assertions like 
> Schema-0016 only apply when WSDL 2.0 components like InterfaceFault 
> and InterfaceMessageReference resolve their 'element' QNames to 
> ElementDeclarations (but not to the contents of {element declarations} 
> and {type definitions} themselves).
>
> Can someone from the working group please explain which interpretation 
> is correct?
>
> Thanks,
> John Kaputin
>
Received on Wednesday, 10 January 2007 17:53:51 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:58:45 GMT