- From: Jacek Kopecky <jacek.kopecky@systinet.com>
- Date: Thu, 11 Mar 2004 16:16:33 +0100
- To: ygoland@bea.com
- Cc: WS-Description WG <www-ws-desc@w3.org>
Yaron,
why appendix? Why not, say, section 3? (with all sections starting with
the current 3 bumped up) I agree with Amy that the text doesn't belong
in an appendix, but I could see it in a section following the functional
definition section.
On the other hand, I kinda see the drawbacks for implementors, and I
think that the audience that would really benefit from your proposed
changes is already targeted by the primer.
Best regards,
Jacek Kopecky
Systinet Corporation
http://www.systinet.com/
On Wed, 2004-03-10 at 19:00, Yaron Y. Goland wrote:
> In writing a specification one tries to strike a balance between
> readability and reference-ability. WSDL 2.0 has done a good job in
> striking this balance by adopting a structure for section 2 where the
> functional behaviors are described in sections 2.x.1 and infoset/xml
> information is presented in sections 2.x.2 and 2.x.3.
>
> We would propose a small organizational change which we believe will
> make WSDL 2.0's readability better without harming its
> reference-ability. The purpose of this change is to let the reader focus
> on the functional definition of the components in a single section and
> then have a separate section to understand how the functional component
> model is represented in the infoset and XML
>
> Specifically, we propose the following transformation:
>
> Step 1. A new appendix A entitled "Component Model XML/InfoSet Bindings
> - Normative" should be added. All existing appendix's should have
> their letters bumped up by one.
>
> Step 2. Appendix A should have a hierarchy structure that is identical
> to the 2.x hierarchy structure. E.g. A.1 Definitions, A.2 Interface, etc.
>
> Step 3. All sections 2.x.2 and 2.x.3 should be moved into their
> corresponding A.X and be renumbered A.x.1 and A.x.2.
>
> Step 4. Each 2.x title (e.g. 2.8 Binding) should be deleted and each
> 2.x.1 title (e.g. 2.8.1 Binding Component) should be promoted (e.g. 2.8
> Binding Component).
>
> Step 5. At the end of each 2.x section the line "The [Insert Section
> text title here] is represented in XML as:". Following this line the XML
> short form schema definition should be copied from section A.x.1. E.g.
> "The Binding Component is represented in XML as:".
>
> None of the previous applies to sections 2.14 - 2.16.
>
> I realize that step 5 introduces redundant text, the XML definition will
> now appear in two sections. The reason for the redundancy is that I
> think most people will more quickly grasp what's being said if they can
> see the XML pseudo-schema.
>
> I have included a small sample of what section 2.1 would look like after
> the suggested transformation.
>
> Thanks,
>
> Yaron
>
>
>
> ______________________________________________________________________
>
> Web Services Description Language (WSDL) Version 2.0 Part 1: Core
> Language
> 2. Component Model
> 2.1 Definitions Component
> At the abstract level, the Definitions component is just a container
> for two categories of component; WSDL components and type system
> components.
>
> WSDL components are interfaces, bindings and services.
>
> Type system components are element declarations and type definitions
> drawn from some type system. The former define the [local name],
> [namespace name], [children] and [attributes] properties of an element
> information item; the latter define only the [children] and
> [attributes] properties.
>
> The properties of the Definitions component are as follows:
>
> * {interfaces} A set of named interface definitions
> * {bindings} A set of named binding definitions
> * {services} A set of named service definitions
> * {element declarations} A set of named element declarations,
> each one isomorphic to a global element declaration as defined
> by XML Schema
>
>
> The set of interfaces/binding/services/etc. available in the
> Definitions component include those that are defined within the
> component itself and those that are imported and/or included. Note
> that at the component model level, there is no distinction between
> directly defined components vs. imported/included components.
>
> The components directly defined within a single Definitions component
> are said to belong to the same target namespace. The target namespace
> therefore groups a set of related component definitions and provides a
> hint of the intended semantics of the components.
>
> Note:
>
> It is RECOMMENDED that the value of the targetNamespace attribute
> information item SHOULD be a dereferencible URI and that it resolve to
> a WSDL document which provides service description information for
> that namespace.
>
> If the service description is split into multiple documents (which may
> be combined as needed via 4.1 Including Descriptions), then the
> targetNamespace attribute information item SHOULD resolve to a master
> document which includes all the WSDL documents for that namespace.
> This approach enables the WSDL component designators' fragment
> identifiers to be properly resolvable.
>
> Imported components have different target namespace values from the
> Definitions component that is importing them. Thus importing is the
> mechanism to use components from one namespace in another set of
> definitions.
>
> Each WSDL or type/element component MUST be uniquely identified by its
> qualified name. That is, if two distinct components of the same kind
> (Interface, Binding etc.) are in the same target namespace, then their
> QNames MUST be unique. However, different kids of components (e.g., an
> Interface component and a Binding component) MAY have the same QName.
> Thus, QNames of components must be unique within the space of those
> components in a given target namespace.
>
> In addition to WSDL components and type and element components,
> additional extension components MAY be added via extensibility 6.
> Language Extensibility. Further, additional properties to WSDL and
> type/element components MAY also be added via extensibility.
>
> The definitions component is represented in XML as:
>
> <definitions
>
> targetNamespace="xs:anyURI" >
>
> <documentation />?
>
> [ <import /> | <include /> ]*
>
> <types />?
>
> [ <interface /> | <binding /> | <service /> ]*
>
> </definitions>
>
> A. Component Model XML/InfoSet Bindings - Normative
> A.1 Definitions
> A.1.1 XML Representation of Definitions Component
> <definitions
>
> targetNamespace="xs:anyURI" >
>
> <documentation />?
>
> [ <import /> | <include /> ]*
>
> <types />?
>
> [ <interface /> | <binding /> | <service /> ]*
>
> </definitions>
>
>
> WSDL definitions are represented in XML by one or more WSDL
> Information Sets (Infosets), that is one or more definitions element
> information items. A WSDL Infoset contains representations for a
> collection of WSDL components which share a common target namespace. A
> WSDL Infoset which contains one or more import element information
> items 4.2 Importing Descriptions corresponds to a collection with
> components drawn from multiple target namespaces.
>
> The target namespace represents an unambiguous name for the intended
> semantics of the WSDL Infoset. The targetNamespace URI SHOULD point to
> a human or machine processable document that directly or indirectly
> defines the semantics of the WSDL Infoset.
>
> The definitions element information item has the following Infoset
> properties:
>
> * A [local name] of definitions .
> * A [namespace name] of "http://www.w3.org/@@@@/@@/wsdl".
> * One or more attribute information items amongst its
> [attributes] as follows:
> * A REQUIRED targetNamespace attribute information item as
> described below in 2.1.2.1 targetNamespace attribute
> information item.
> * Zero or more namespace qualified attribute information items.
> The [namespace name] of such attribute information items MUST
> NOT be "http://www.w3.org/@@@@/@@/wsdl".
> * Zero or more element information items amongst its [children],
> in order as follows:
> * An OPTIONAL documentation element information item (see 5.
> Documentation).
> * Zero or more element information items from among the
> following, in any order:
> * Zero or more include element information items (see 4.1
> Including Descriptions)
> * Zero or more import element information items (see 4.2
> Importing Descriptions)
> * Zero or more namespace-qualified element information items.
> The [namespace name] of such element information items MUST
> NOT be "http://www.w3.org/@@@@/@@/wsdl".
> * An OPTIONAL types element information item (see 3. Types).
> * Zero or more element information items from among the
> following, in any order:
> * interface element information items (see 2.2.2 XML
> Representation of Interface Component).
> * binding element information items (see 2.8.2 XML
> Representation of Binding Component).
> * service element information items (see 2.12.2 XML
> Representation of Service Component).
> * Zero or more namespace-qualified element information items.
> The [namespace name] of such element information items MUST
> NOT be "http://www.w3.org/@@@@/@@/wsdl".
>
> A.1.1.1 targetNamespace attribute information item
> The targetNamespace attribute information item defines the namespace
> affiliation of top-level components defined in this definitions
> element information item. Interfaces, Bindings and Services are
> top-level components.
>
> The targetNamespace attribute information item has the following
> Infoset properties:
>
> * A [local name] of targetNamespace
> * A [namespace name] which has no value
>
>
> The type of the targetNamespace attribute information item is
> xs:anyURI.
>
>
> A.1.2 Mapping Definitions' XML Representation to Component Properties
> The mapping between the properties of the Definitions component (see
> 2.1.1 The Definitions Component) and the XML Representation of the
> definitions element information item (see 2.1.2 XML Representation of
> Definitions Component) is described in Table 2-1.
>
> Table 2-1. Mapping between
> Definitions Component Properties
> and XML Representation
>
> Property
>
> Mapping
>
> {interfaces}
>
> The interface definitions
> corresponding to all the interface
> element information items in the
> [children] of the definitions
> element information item, if any,
> plus any included or imported
> interface definitions (see 4.
> Modularizing WSDL descriptions).
>
> {bindings}
>
> The binding definitions
> corresponding to all the binding
> element information items in the
> [children] of the definitions
> element information item, if any,
> plus any included or imported
> binding definitions (see 4.
> Modularizing WSDL descriptions).
>
> {services}
>
> The service definitions
> corresponding to all the service
> element information items in the
> [children] of the definitions
> element information item, if any,
> plus any included or imported
> service definitions (see 4.
> Modularizing WSDL descriptions).
>
> {element declarations}
>
> The element declaration components
> corresponding to all the element
> declarations defined as descendants
> of the types element information
> item, if any, plus any imported
> element definitions. At a minimum
> this will include all the global
> element declarations defined by XML
> Schema element element information
> items. It MAY also include any
> definition from some other type
> system which describes the [local
> name], [namespace name],
> [attributes] and [children]
> properties of an element
> information item.
>
Received on Thursday, 11 March 2004 10:16:40 UTC