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

++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://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#</base:namespaceName>
               <base:localName>RDF</base:localName>
           </name>
           <system>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# 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 Tuesday, 9 January 2007 23:15:31 UTC