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

RE: Proposal for CR145

From: Jonathan Marsh <jonathan@wso2.com>
Date: Wed, 31 Jan 2007 11:45:52 -0800
To: "'Jacek Kopecky'" <jacek.kopecky@deri.org>, "'Roberto Chinnici'" <Roberto.Chinnici@Sun.COM>
Cc: <www-ws-desc@w3.org>
Message-ID: <01a601c74570$6c78fab0$3501a8c0@DELLICIOUS>

I also found "and only those" a bit confusing.  It seems like we'd have two
places in the spec claiming to be the sole source of element declarations
and type definitions, each one therefore contradicting the other.  So I'd
push Jacek's suggestion a little farther:

3.1.1:
The schema components defined in the imported namespace are referenceable by
QName (see 2.17 QName resolution). Only components in the imported namespace
are referenceable in the WSDL 2.0 document.  [[ For each component in the
imported namespace, a corresponding Element Declaration Component or Type
Definition Component MUST appear in the {element declarations} or {type
defintions} property respectively of the Description component corresponding
to the WSDL document that imports the schema, or that imports directly or
indirectly a WSDL document that imports the schema. Schema components not in
an imported namespace MUST NOT appear in the {element declarations} or {type
definitions} properties.]]

3.1.2:
The schema components defined and declared in the inlined schema document
are referenceable by QName (see 2.17 QName resolution). Only components
defined and declared in the schema itself and components included by it via
xs:include are referenceable.  [[ For each component defined and declared in
the inlined schema document or included by xs:include, a corresponding
Element Declaration Component or Type Definition Component MUST appear in
the {element declarations} property or {type definitions} property
respectively of the Description component corresponding to the WSDL document
that contains the schema, or that imports directly or indirectly a WSDL
document that contains the schema. Schema components not defined or declared
in the inlined schema document or included by xs:include MUST NOT appear in
the {element declarations} or {type definitions} properties.]]

That's fairly tortuous but I think more precise.  I think this also
clarifies Jacek's second concern about importing a WSDL with an inline (or
imported) schema.  But it also demonstrates that visibility of schema
components and the appearance of Element Declaration or Type Definition
components are not parallel, which I hadn't realized and which removes some
of my enthusiasm for this change.
 
Jonathan Marsh - http://www.wso2.com - http://auburnmarshes.spaces.live.com
 

> -----Original Message-----
> From: www-ws-desc-request@w3.org [mailto:www-ws-desc-request@w3.org] On
> Behalf Of Jacek Kopecky
> Sent: Tuesday, January 30, 2007 5:36 AM
> To: Roberto Chinnici
> Cc: www-ws-desc@w3.org
> Subject: Re: Proposal for CR145
> 
> 
> Roberto, in the last four parts, I think it would be useful to clarify
> what the "and only those" part means to exclude. Let me suggest a
> template (the last sentence) for the first part, easily reproducible to
> the others:
> 
> 
> [[
> All element declaration schema components in the imported namespace, and
> only those, MUST be included in the {element declarations} property of
> the Description component corresponding to the importing WSDL 2.0
> document. In other words, no imported element declaration components
> will be included.
> ]]
> 
> Also, I'm not sure if your proposal clarifies the handling of XML Schema
> components from imported WSDL files:
> 
> wsdl1:
> <wsdl:description>
>   <wsdl:import namespace="wsdl2"/>
> </wsdl:description>
> 
> wsdl2:
> <wsdl:description>
>   <wsdl:types>
>     <xs:schema>
>       <xs:element name="foo"/>
>     </xs:schema>
>   </wsdl:types>
>   ...
> </wsdl:description>
> 
> I believe that the element declaration for "foo" should be among
> {element declarations} of wsdl1 because some WSDL components imported
> from wsdl2 might use it.
> 
> Best regards,
> Jacek
> 
> On Mon, 2007-01-29 at 18:52 -0800, Roberto Chinnici wrote:
> > I had a standing action to offer a detailed proposal for CR145 [1],
> > which I hereby discharge.
> >
> > In section 2.1.1 [2], change
> >
> > [[
> > The set of top-level components contained in the Description component
> > associated with an initial WSDL 2.0 document consists of the components
> > defined in the initial document and the components associated with the
> > documents that the initial document includes and the namespaces that the
> > initial document imports.
> > ]]
> >
> > to
> >
> > [[
> > The set of top-level components contained in the Description component
> > associated with an initial WSDL 2.0 document consists of the components
> > defined in the initial document, plus the components associated with the
> > WSDL 2.0 documents that the initial document includes, plus the
> > components defined by other WSDL 2.0 documents in the namespaces that
> > the initial document imports.
> > ]]
> >
> > Ahead of the last paragraph in the same section (the one starting with
> > "In addition to WSDL 2.0 components..."), add this sentence:
> >
> > [[
> > When using the XML Schema language to describe type system components,
> > the inclusion of Element Declaration components and Type Definition
> > components in a Description component is governed by the rules in "3.1
> > Using W3C XML Schema Description Language".
> > ]]
> >
> > Jointly, these changes clarify that inclusion of type system components
> > is governed by its own set of rules, to avoid confusion with the
> > differences in semantics between wsdl:import/wsdl:include and
> > xs:import/xs:include.
> >
> > In section 3.1.1 [3], add the following statements at the end of the
> > first paragraph (i.e. after "Only components in the imported namespace
> > are referenceable in the WSDL 2.0 document."):
> >
> > [[
> > All element declaration schema components in the imported namespace, and
> > only those, MUST be included in the {element declarations} property of
> > the Description component corresponding to the importing WSDL 2.0
> document.
> >
> > All type definition schema components in the imported namespace, and
> > only those, MUST be included in the {type definitions} property of the
> > Description component corresponding to the importing WSDL 2.0 document.
> > ]]
> >
> > In section 3.1.2 [4], add the following statements before the paragraph
> > which starts with "Note that components defined in an inlined XML
> schema":
> >
> > [[
> > All element declaration schema components in the target namespace of the
> > inlined schema document, and only those, MUST be included in the
> > {element declarations} property of the Description component
> > corresponding to the enclosing WSDL 2.0 document.
> >
> > All type definition schema components in the target namespace of the
> > inlined schema document, and only those, MUST be included in the {type
> > definitions} property of the Description component corresponding to the
> > enclosing WSDL 2.0 document.
> > ]]
> >
> > [1] http://www.w3.org/2002/ws/desc/5/cr-issues/#CR145
> > [2]
> >
> http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl20/wsdl20.html?conten
> t-type=text/html;%20charset=utf-8#Description_details
> > [3]
> >
> http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl20/wsdl20.html?conten
> t-type=text/html;%20charset=utf-8#import-xsd
> > [4]
> >
> http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl20/wsdl20.html?conten
> t-type=text/html;%20charset=utf-8#inlining-xsd
> >
> > Thanks,
> > Roberto
> >
Received on Wednesday, 31 January 2007 19:45:48 GMT

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