RE: [Bug 6463] New: Attaching Policy to WS-Mex GetMetadata

Asir

Yes, I agree that we could close with no action, but it would be 
beneficial to have an example.  I also think that this provides us with an 
opportunity to make the spec easier for readers in this area.

I suggest:
1) Add an example for GetMetadata in section 8 "Bootstrapping Metadata 
Retrieval". 
2) Example 7.2 illustrates how the WS-T Get might be bootstrapped.  Move 
example 7.2 to section 8 so that the 2 examples are same relevant section
3) Example 7.2 could be improved.  I can raise a separate issue for this 
or we could fix it here.

Detailed proposal is attached below.  Note that for (1), I used external 
policy attachments.  This is  because we already have examples with 
embedded metadata and a variety of examples is always helpful to readers. 
However, embedded wsdl would work in the example too.  Similarly, I used 
MetadataLocation in (3) for variety. 

Many thanks
Katy

Draft Proposal  for 6463:
=========================

1) Add the following to WS-Mex section 8 Bootstrapping-Metadata-Retrieval:
--------------------------------------------------------------------------

For example, metadata for the WS-MetadataExchange GetMetadata operation 
MAY be passed within an Endpoint Reference as illustrated in example 8.1. 

Example 8.1: Passing Policy of the GetMetadata request within an EPR

(01)  <wsa:EndpointReference
(02)      xmlns:wsa='http://www.w3.org/2005/08/addressing'>
(03)    <wsa:Address>http://services.example.org/stockquote</wsa:Address>

        <wsa:Metadata>

(08)      <mex:Metadata xmlns:mex='http://www.w3.org/2009/09/ws-mex'>
(09)        <mex:MetadataSection
                Dialect='http://www.w3.org/TR/ws-policy-attach'>  
                <wsp:PolicyAttachment>
                   <wsp:AppliesTo> 
                      <!-- Following according to: 
http://www.w3.org/TR/ws-policy-attach/#uri-domain-expression -->
                      <!-- with URI syntax from: 
http://www.w3.org/TR/wsdl11elementidentifiers/                 -->
                      <wsp:URI>
                          
http://www.w3.org/2009/09/ws-mex#wsdl1.PortTypeOperation(GetMetadata)
                  </wsp:URI>
                   </wsp:AppliesTo>
                   <wsp:Policy> ... </wsp:Policy>  
                </wsp:PolicyAttachment> 
(22)        </mex:MetadataSection>
(23)      </mex:Metadata>
(24)    </wsa:Metadata>
(25)  </wsa:EndpointReference>

Example 8.1 shows an EPR that supports WS-MetadataExchange.  Lines [09] to 
[22] specify a metadata section that defines required policy for the 
WS-MetadataExchange GetMetadata operation using the WS-PolicyAttachments 
[WS-PolicyAttachments] dialect.  Note that it would be valid to pass the 
WS-MetadataExchange WSDL with policy in-lined instead of the 
WS-PolicyAttachment. 

2) Move example 7.2 to section 8
--------------------------------

because this example is specific to bootstrapping metadata retrieval and 
fits nicely with the example above with additional text something like:

"Similarly, metadata for the WS-Transfer Get operation may be passed 
within an Endpoint Reference as illustrated in example 7.2."

3) Finally, I suggest that we improve example 7.2 within the context of 
this issue
----------------------------------------------------------------------------------

Make the following updates to example 7.2:

  a) Add "Identifier='http://www.w3.org/2009/09/ws-tra'> " line 16 below
  b) Replace: 
  (16)                  <!-- Reference to WS-Transfer WSDL wst:Resource 
portType
  (17)                     plus binding -->
  with:
                        <mex:MetadataLocation>
                           <!-- Reference to WS-Transfer WSDL at the 
Metadata Endpoint -->
  (17)                        
http://services.example.org/stockquote/metadata/TransferWSDL
                        </mex:MetadataLocation>

The resulting example is: 

Example 7-2: Endpoint reference with embedded metadata about the Metadata 
Reference 
(01)  <wsa:EndpointReference
(02)      xmlns:wsa='http://www.w3.org/2005/08/addressing'>
(03)    <wsa:Address>http://services.example.org/stockquote</wsa:Address>
(04)    <wsa:Metadata>
(05)      <mex:Metadata xmlns:mex='http://www.w3.org/2009/09/ws-mex'>

(06)        <mex:MetadataSection
(07)            Dialect='http://www.w3.org/2009/09/ws-mex'>
(08)          <mex:MetadataReference>
(09)            <wsa:Address>
(10)              http://services.example.org/stockquote/metadata
(11)            </wsa:Address>
(12)            <wsa:Metadata>
(13)              <mex:Metadata>
(14)                <mex:MetadataSection
(15)                  Dialect='http://schemas.xmlsoap.org/wsdl/'
(16)                    Identifier='http://www.w3.org/2009/09/ws-tra'> 
                      <mex:MetadataLocation>
                         <!-- Reference to WS-Transfer WSDL at the 
Metadata Endpoint -->
(17)                        
http://services.example.org/stockquote/metadata/TransferWSDL
                      </mex:MetadataLocation>
(18)                </mex:MetadataSection>
(19)              </mex:Metadata>
(20)            </wsa:Metadata>
(21)          </mex:MetadataReference>
(22)        </mex:Metadata>
          </wsa:Metadata>
        </EndpointReference>





From:
Asir Vedamuthu <asirveda@microsoft.com>
To:
"public-ws-resource-access@w3.org" <public-ws-resource-access@w3.org>
Date:
02/11/2009 01:38
Subject:
RE: [Bug 6463] New: Attaching Policy to WS-Mex GetMetadata



There is a simple, natural solution - embed a WSDL (using MEX in an EPR) 
that specifies binding/port information for the MetadataExchange portType 
at http://www.w3.org/2009/09/ws-mex/metadataexchange.wsdl and attach 
policy expressions to bindings, as appropriate. This is specifically 
covered by some prose in the current version of WS-MetadataExchange draft 
[1]:

"In particular, the mechanisms described in 7 Metadata in Endpoint 
References allow issuers of endpoint references to include sufficient 
protocol binding information to allow requesters to issue a Get request 
against a metadata resource, or a Get Metadata request against a service 
endpoint, in order to retrieve all the information needed to use the 
service."

Proposal: close issue 6463 without any action!

[1] 
http://www.w3.org/TR/2009/WD-ws-metadata-exchange-20090924/#Bootstrapping-Metadata-Retrieval 


Regards,

Asir S Vedamuthu
Microsoft Corporation

-----Original Message-----
From: public-ws-resource-access-notifications-request@w3.org [
mailto:public-ws-resource-access-notifications-request@w3.org] On Behalf 
Of bugzilla@wiggum.w3.org
Sent: Wednesday, January 21, 2009 6:45 AM
To: public-ws-resource-access-notifications@w3.org
Subject: [Bug 6463] New: Attaching Policy to WS-Mex GetMetadata


http://www.w3.org/Bugs/Public/show_bug.cgi?id=6463

           Summary: Attaching Policy to WS-Mex GetMetadata
           Product: WS-Resource Access
           Version: PR
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: normal
          Priority: P2
         Component: MetadataExchange
        AssignedTo: public-ws-resource-access-notifications@w3.org
        ReportedBy: katy_warr@uk.ibm.com


We should consider clarifying or recommending how policy should be 
associated
with a WS-MetadataExchange GetMetadata request.  ('Policy' might be 
existing
policies such as WS-SecurityPolicy or potential new assertions, as 
described in
issue 6406 here: http://www.w3.org/Bugs/Public/show_bug.cgi?id=6406).

A GetMetadata operation's policy cannot be attached within the Web service
endpoint's WSDL because:
In order for a client to establish the WS-Mex GetMetadata policy, it would 
need
to issue a GetMetadata(WSDL) request at the web service endpoint...but in 
order
to issue a GetMetadata request at the endpoint it would need to establish 
the
WS-Mex GetMetadata policy...

The issue here is: what is the correct way to bootstrap the bootstrap 
(without
entering an infinite loop)?


--
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.











Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 
741598. 
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU

Received on Monday, 2 November 2009 13:10:34 UTC