[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [wsrf] New RMD issue: Simplification of metadataDescriptorLocation type
+1 to the separation of this issue. +1 to the proposed anyURI datatype Also, I'd like to suggest that we rename the wsrmd:MetadataDescriptorLocation to wsrmd:DefinitionsLocation. I can see that current name derives from the terminology in section 2 of the spec: "MetadataDescriptor Document: An XML instance document whose root is a Definitions element from the wsrmd: namespace. This document contains definitions for zero or more MetadataDescriptor components." The overloading of 'MetadataDescriptor' is confusing - is it a document or an element within the document? There is an analogy with xsd which would make matters much clearer. In the case of xsd, the schemaLocation on <xsd:import> indicates that the contents of the <schema> element from a separate document are being imported to assist qname references from the importing document. The targetNamespace attribute on <schema> identifies the imported namespace. In our case, we need to reference the contents of the namespace populated by the contents of the <Definitions> element from a separate source, and the wsrmd:xxxxLocation is a hint about where to find the description of those contents. By this analogy, we could call it wsrmd:DefinitionsLocation. Ok, it's not a huge improvement, but every little bit helps. Regards, Tim Banks. Ian Robinson/UK/IBM@IBMGB wrote on 24/04/2006 14:51:49: > > > > > I would like to separate the following concern out from the discussion on > issue WSRF174 into a new issue in its own right, independent of the outcome > of WSRF174. > > This relates back to the final observation in [1] that, since we now define > at most one MDD per WS-Resource, we can simplify the type of > MetadataDescriptorLocation from "list of pairs of URIs" to a single URI > that provides information on the location of the MDD. The reason there is > currently a list of pairs or URIs is so that we could (in the past) > accomodate a number of different MDDs, each of which pertains to a specific > namespace (the first URI in the pair). We have moved away from this and now > need only a single URI for the location of the single MDD. > > In order to have a single, consistent story for locating the MDD, I propose > the following additions to the resolution of issue 174: > > Change the definition of the wsrmd:MetadataDescriptorLocation from > "wsrmd:PairsOfURIType" to "xsd:anyURI" > Specifically, change the schema from this: > > <!-- ======================== Utility Types ======================= --> > <xsd:simpleType name="PairsOfURIType"> > <xsd:list itemType="xsd:anyURI" /> > </xsd:simpleType> > > <!-- ================ PortType Attribute Extensions > ================ --> > <xsd:attribute name="metadataDescriptorLocation" > type="wsrmd:PairsOfURIType" /> > > > to this: > > <!-- ================ PortType Attribute Extensions > ================ --> > <xsd:attribute name="metadataDescriptorLocation" type="xsd:anyURI" /> > > > Further, change XML snippets to reflect this - for example lines 235-241 > become: > <portType name="OperatingSystem" > wsrf-rp:ResourceProperties="os:OSResourceProperties" > ..wsrmd:metadataDescriptor=”os:OperatingSystemMetadataDescriptor” > ..wsrmd:metadataDescriptorLocation= > ”http://example.com/metadataDescriptors/OperatingSystem.wsrmd” > > … > </portType> > > Change "10.1 Extending WSDL 1.1 PortType" to read: > > "... > > <wsdl:definitions …> > <wsdl:portType … > wsrmd:metadataDescriptor=”xs:QName”? > wsrmd:metadataDescriptorLocation=”xs:anyURI”? > … > > … > </wsdl:portType> > > > > > This definition is further constrained as follows: > > > /wsdl:portType/@wsrmd:metadataDescriptor > > > If this attribute appears on a WSDL 1.1 portType element its value MUST be > a QName that corresponds to a MetadataDescriptor component. Further, the > value of the MetadataDescriptor component contained in that document MUST > have {interface} that matches the QName of the portType containing > @wsrmd:metadataDescriptor. Any service that implements this portType MUST > be associated with a MetadataDescriptor that is, or specializes the > MetadataDescriptor identified by the value of this attribute. > > > /wsdl:portType/@wsrmd:metadataDescriptorLocation > > > If this attribute appears on a WSDL 1.1 portType element its value MUST be > a URI that corresponds to a URL at which can be found more information > about the MetadataDescriptor document, such as an XML document containing a > MetadataDescriptor Definitions element as its root element. > > > " > > > We should make the same change for the MetadataDescriptor @wsdlLocation > which is currently defined on lines 493 - 495 as: > > "{wsdlLocation} a set of URI pairs, each pair associating a namespace > URI with a URL of a document containing a WSDL definition of that > namespace. This is a similar mechanism to that used in WSDL 2.0 > [WSDL2.0]. " > > > The new definition of this attribute would be: > > "{wsdlLocation} a URI that corresponds to the URL of a document > containing the WSDL definition of the WS-Resource." > > > > > > > is attribute should should be changed from "a set of" to "a pair of" > indicating the location of a single WSDL document. > > [1] > http://www.oasis-open. > org/apps/org/workgroup/wsrf/email/archives/200603/msg00006.html > > Regards, > Ian Robinson
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]