- From: Mark Nottingham <mark.nottingham@bea.com>
- Date: Mon, 14 Jun 2004 17:05:40 -0700
- To: www-ws-desc@w3.org
Issue 225 [1] points out that WSDL 2.0 requires that messages be modelled as XML Infosets. Jonathan proposes: [[[ WG had previously agreed (informally?) that WSDL only describes XML Web services. Other type systems are limited to those that support XML elements. Status quo proposal: reconfirm that decision, and explain the limitations on extensible type systems in the spec. ]]] I'd like to push back against the status quo. I believe that, with a few small changes, WSDL can accommodate other data models in the future, without putting any burden on implementers today, and without making the spec any less clear or tight. WSDL already accommodates other type systems; this would just allow for type systems based on data models other than the Infoset. A prime example of this is RDF. I find it completely plausible (and, in some cases, advantageous; see [2][3]) to model data using RDF Schema. Although RDF/XML is an XML serialisation of the RDF data model, RDF itself doesn't describe "the [local name], [namespace name], [attributes] and [children] properties of an element information item." Should RDF Schema be either disallowed from describing WSDL messages, or forced to unnaturally contort itself somehow to fit into an Infoset data model? Similarly, the Internet Media Type system is far more prevalent than XML, and it's easy to imagine cases where people would want to describe non-XML Web services and sites using WSDL. Why should they be forced into modelling their data as an Infoset? The only changes that I see as necessary to allow alternate data models are: 1) Section 2.1.1 - remove this sentence: "They define the [local name], [namespace name], [children] and [attributes] properties of an element information item." and remove this clause from the final bullet: "each one isomorphic to a global element declaration as defined by XML Schema" 2) Table 2-1 - change the mapping of {element declarations} from: """ 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.""" to: """ The content declaration components corresponding to the content declarations defined as descendants of the types element information item, if any, plus any imported content definitions.""" 3) Section 3 - remove this sentence: "At the abstract level, the {element declarations} property of The Definitions Component is a collection of imported and embedded schema components. " 4) Throughout - Change instances of "element declaration" to "content declaration", the {element} property to {content}, and instances of the "element" Attribute Information Item to "content". 5) In the Bindings section, note that bindings should enumerate the data models that they can serialise into concrete messages. 1. http://dev.w3.org/cvsweb/%7Echeckout%7E/2002/ws/desc/issues/wsd- issues.html#x225 2. http://www.mnot.net/blog/2004/05/12/on_infosets 3. http://www.mnot.net/blog/2004/05/28/other_data_models -- Mark Nottingham Principal Technologist Office of the CTO BEA Systems
Received on Monday, 14 June 2004 20:05:50 UTC