- From: Arthur Ryman <ryman@ca.ibm.com>
- Date: Fri, 9 Jun 2006 12:42:25 -0400
- To: Jacek Kopecky <jacek.kopecky@deri.org>
- Cc: WS-Description WG <www-ws-desc@w3.org>, www-ws-desc-request@w3.org
- Message-ID: <OFFD3163A5.56EF3DA9-ON85257188.0059FF15-85257188.005BCFB8@ca.ibm.com>
Jacek, I think the spec needs clarification. I posted some suggestions elsewhere.[1] I don't want to introduce processor-speak into the spec. The way to avoid that is to talk about validity of component model instances. However, we need to add information about the extensions supported. We should therefore define the concept of extended component models. "An extended component model is the core component model as described in Part 1 augmented with additional properties, components, and constraints as described by one or more extension specifications, such as those contained in Part 2." Every extension specification MUST have a unique identifying namespace IRI that can be used for extension attributes and elements in documents. I also propose that we add a property to the Description component: {extensions} OPTIONAL: a set of IRIs that identify the supported extensions Given these changes, we interpret REQUIRED extension properties as being required conditionally based on the presence of the extension IRI in the {extensions} property of the Description component. >From an implementation point of view, a processor "knows" which extensions it supports, either a fixed list or configurable by some means. When it produces a component model, it lists the suported extensions on the {extensions} property. When it reads a document, it ignores unknown optional extensions attributes and elements, or reports an error if it encounters an unknown wsdl:required extension. [1] http://lists.w3.org/Archives/Public/www-ws-desc/2006Jun/0024.html 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 Jacek Kopecky <jacek.kopecky@deri.org> Sent by: www-ws-desc-request@w3.org 06/08/2006 01:54 PM To WS-Description WG <www-ws-desc@w3.org> cc Subject my action re: CR050 Hi all, I got an action to respond to Jonathan regarding CR050 which we today agreed to close with no change to the spec. However, we already discussed CR050 on the call on 2006/06/01 and we concluded that if an extension is supported, it must obey the constraints, so if safety is supported it must be present on all operations. (Basically status quo.) However, we didn't close the issue because we felt that we needed more discussion on how to make the spec clearer about this. Let me step forward and suggest how we could perhaps concretely clarify this. It seems that the best place to do this is in part 1 section 6.3 Extensibility Semantics [2]. There are already three notes at the end of this section, and I'm suggesting a fourth one, so maybe it could be restructured somehow, but I frankly don't know how. 8-) To resolve issue CR050, I suggest we add this note to 6.3: Note: The presence of an optional extensibility element or attribute may introduce new properties to the component model. It may be useful for the extensions to define default values for the properties for the case when the extensibility element or attribute is not present. For example, _Operation safety_ extension defined in part 2 specifies an attribute wsdlx:safe and adds the required property {safety}, defaulting to "false" if the attribute is not present on an interface operation. This behavior suggests that mere understanding (or awareness) of an extension by a processor can amend the component model, and that different processors may parse the same WSDL document into different component models, if they support different optional extensions. Since optional extensions must not invalidate the meaning of WSDL documents (see section 6.1.1.), the different component models resulting from differing support for optional extension should, on some level, be equivalent. However, such component model differences need to be considered if component models from different processors are being compared, for example for interoperability testing. (end of note) It's complex, abstract, and it uses the term processor which we eschewed, if I remember correctly, but I don't see now how it could be clarified better. Or maybe we could just make {safety} optional and clarify in 6.3 that optional extensions (or any extensions, most probably) cannot introduce REQUIRED properties because the absence of an extension from the WSDL document makes the properties absent as well. Sure hope this makes sense, Jacek [1] http://lists.w3.org/Archives/Public/www-ws-desc/2006Jun/att-0004/20060601-ws-desc-minutes.html [2] http://www.w3.org/TR/wsdl20/#extensibility-semantics
Received on Friday, 9 June 2006 16:42:45 UTC