« Impedance mismatch | Main | Middleware 2005 workshop proposals »

EPR metadata accepted

Today in the W3C WS-Addressing working group face-to-face meeting here in Boston, the group adopted the metadata proposal into the draft specification. The most recent full proposal was co-submitted by IBM, IONA, Oracle, SAP, and Sun, and last week Microsoft submitted a well-designed friendly amendment that was acceptable to all the original co-submitters. Modulo a few details, this amendment is essentially what the group adopted today.

This proposal specifies a new spot in the endpoint reference (EPR) where information such as policies and service descriptions can be stored. This allows creators of EPRs to put as much or as little metadata about the endpoint directly into their EPRs (including none at all, of course). It provides a solution for a number of issues, including those I've mentioned previously here:

As shown in the amended proposal, an EPR might include WSDL 1.1 information in the following fashion:

<wsa:EndpointReference
     xmlns:wsa="http://www.w3.org/@@@@/@@/addressing">
   <wsa:Address>http://example.com/fabrikam/acct</wsa:Address>
   <wsa:Metadata>
     <wsdl11:definitions targetNamespace="http://example.com/fabrikam"
          xmlns:fabrikam="http://example.com/fabrikam"
          xmlns:abc="http://www.abccorp.com/"
          xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
          xmlns:iiop="http://www.iiop.org/"
          xmlns:wsdl11="http://www.w3.org/@@@@/@@/wsdl">
        <wsdl11:import namespace="http://example.com/fabrikam"
            location="http://example.com/fabrikam/fabrikam.wsdl"/>
        <wsdl11:import namespace="http://www.abccorp.com/"
           location="http://www.abccorp.com/abc.wsdl"/>
      <wsdl11:service name="InventoryService">
         <wsdl11:port name="ep1" binding="abc:soap-http-binding">
            <soap:address location="http://example.com/fabrikam/acct"/>
         </wsdl11:port>
         <wsdl11:port name="ep2" binding="abc:iiop">
            <iiop:address location="..."/>
        </wsdl11:service>
    </wsdl11:definitions>
  </wsa:Metadata>
</wsd:EndpointReference>

It took a great deal of discussion and analysis to get to this point. Many thanks to the WG for their objective consideration of this proposal and their attention to getting it right.

About

This page contains a single entry from the blog posted on February 28, 2005 10:26 PM.

The previous post in this blog was Impedance mismatch.

The next post in this blog is Middleware 2005 workshop proposals.

Many more can be found on the main index page or by looking through the archives.

Powered by
Movable Type 3.31