<?xml version="1.0" encoding="utf-8"?>
<!-- $Id: ws-policy-attachment-diff20060927.xml,v 1.2 2006/10/12 15:10:08 fsasaki Exp $ -->
<!DOCTYPE spec PUBLIC "-//W3C//DTD Specification V2.10//EN" "xmlspec.dtd" [
<!ENTITY prefix "ws-policy-attachment">
<!ENTITY % entities SYSTEM "entities.dtd">
%entities;
<!ENTITY status SYSTEM "status-attachment.xml">
<!ENTITY document.status "Editors' copy $Date: 2006/10/12 15:10:08 $">
<!ENTITY attachment-title "&attachment.title;">
<!ENTITY prevloc "">
<!ENTITY hellip "&#8230;">
]><spec role="editors-copy" w3c-doctype="wd">
<header>
<title>Web Services Policy 1.5 - Attachment</title>
<w3c-designation>ws-policy-attachment.html</w3c-designation>
<w3c-doctype>Editors' copy $Date: 2006/10/12 15:10:08 $</w3c-doctype>
<pubdate>
<day>@@</day>
<month>@@@@</month>
<year>@@@@</year>
</pubdate>
<publoc>
<loc href="ws-policy-attachment.html" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">ws-policy-attachment.html</loc>
</publoc>
    
<!--
	<prevlocs>
            <loc href="&prevloc;">&prevloc;</loc>
        </prevlocs>
-->
<latestloc>
<loc href="http://dev.w3.org/cvsweb/~checkout~/2006/ws/policy/ws-policy-attachment.html?content-type=text/html;charset=utf-8" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">http://dev.w3.org/cvsweb/~checkout~/2006/ws/policy/ws-policy-attachment.html?content-type=text/html;charset=utf-8</loc>
</latestloc>
<authlist>
<author role="editor">
<name>Asir S Vedamuthu</name>
<affiliation>Microsoft Corporation</affiliation>
</author>
<author role="editor">
<name>David Orchard</name>
<affiliation>BEA Systems, Inc.</affiliation>
</author>
<author role="editor">
<name>Maryann Hondo</name>
<affiliation>IBM Corporation</affiliation>
</author>
<author role="editor">
<name>Toufic Boubez</name>
<affiliation>Layer 7 Technologies</affiliation>
</author>
<author role="editor">
<name>Prasad Yendluri</name>
<affiliation>webMethods, Inc.</affiliation>
</author>
</authlist>
<abstract>
<p>
	This specification, Web Services Policy 1.5 - Attachment, defines two
	general-purpose mechanisms for associating policies, as
	defined in Web Services Policy 1.5 - Framework, with the subjects to which they
	apply. This specification also defines how these
	general-purpose mechanisms may be used to associate policies
	with WSDL and UDDI descriptions.
      </p>
</abstract>
    <status xml:base="file:///C:/2006/ws/policy/entitiesedcopy.dtd"><p></p></status>
    <langusage>
<language id="en-US">English</language>
</langusage>
<revisiondesc>
<p>Last Modified: $Date: 2006/10/12 15:10:08 $</p>
</revisiondesc>
</header>
<body>
<div1 id="tocRange">
<head>Introduction</head>
<p>
	The Web Services Policy 1.5 - Framework [<bibref ref="WS-Policy"></bibref>]
	specification defines an abstract model and an XML-based
	language for expressing policies of entities in a Web services-based system. 
	This specification, Web Services Policy 1.5 - Attachment,
	defines two general-purpose mechanisms for associating
	policies with the subjects to which they apply; the policies
	may be defined as part of existing metadata about the subject
	or the policies may be defined independently and associated
	through an external binding to the subject.
      </p>
<p>
	To enable Web Services Policy to be used with existing Web
	service technologies, this specification describes the use of
	these general-purpose mechanisms with WSDL [<bibref ref="WSDL11"></bibref><phrase diff="add">, </phrase><bibref diff="add" ref="WSDL20"></bibref>] definitions and UDDI [<bibref ref="UDDIAPI20"></bibref>, <bibref ref="UDDIDataStructure20"></bibref>,
	<bibref ref="UDDI30"></bibref>].  <phrase diff="del">WSDL [] is 
	deferred.</phrase></p>
</div1>
<div1 id="NotationsTerminology">
<head>Notations and Terminology</head>
<p>
	This section specifies the notations, namespaces, and
	terminology used in this specification.
      </p>
<div2 id="NotationalConventions">
<head>Notational Conventions</head>
<p>This specification uses the following syntax within normative outlines: </p>
<ulist>
<item>
<p>The syntax appears as an XML instance, but values in <emph>italics</emph> indicate data types instead of literal values.</p>
</item>
<item>
<p>Characters are appended to elements and attributes to indicate cardinality:
	  <ulist>
<item>
<p>"?" (0 or 1)</p>
</item>
<item>
<p>"*" (0 or more)</p>
</item>
<item>
<p>"+" (1 or more)</p>
</item>
</ulist>
</p>
</item>
<item>
<p>The character "|" is used to indicate a choice between alternatives.</p>
</item>
<item>
<p>The characters "(" and ")" are used to indicate that contained items are to be treated as a group with respect to cardinality or choice.</p>
</item>
<item>
<p>This document relies on the XML Information Set [<bibref ref="XMLInfoset"></bibref>]. Information items properties are
	      indicated by the style <emph role="infoset-property">infoset property</emph>.</p>
</item>
<item>
<p>XML namespace prefixes (see <specref ref="nsprefix"></specref>) are used to indicate the namespace of the element or attribute being defined. </p>
</item>
<item>
<p>The ellipses characters "…" are used to
	      indicate a point of extensibility that allows other
	      Element or Attribute Information Items.</p>
</item>
</ulist>
<p>Elements and Attributes defined by this specification are referred to in the text of this document using 
XPath 1.0 [XPATH 1.0] expressions. Extensibility points are referred to using an extended version of this 
syntax:</p>
<ulist>
<item>
<p>An element extensibility point is referred to using {any} in place of the element name. This 
indicates that any element name can be used, from any namespace other than the <phrase diff="chg">http://www.w3.org/@@@@/@@/ws-policy 
</phrase>namespace. </p>
</item>
<item>
<p>An attribute extensibility point is referred to using @{any} in place of the attribute name. This 
indicates that any attribute name can be used, from any namespace. 
namespace. </p>
</item>
</ulist>
<p>Normative text within this specification takes precedence over
	normative outlines, which in turn take precedence over the XML Schema
	[<bibref ref="XMLSchemaPart1"></bibref>] descriptions.</p>
</div2>
<div2 id="XMLNamespaces">
<head>XML Namespaces</head>
<p> This specification uses a number of namespace prefixes throughout; they are
	listed in <specref ref="nsprefix"></specref>. Note that the choice of any namespace
	prefix is arbitrary and not semantically significant (see [<bibref ref="XML-NS"></bibref>]).</p>
<table border="1" cellpadding="5" cellspacing="0" id="nsprefix" summary="Namespace prefixes usage in this specification">
<caption>Prefixes and Namespaces used in this specification</caption>
<thead>
<tr>
<th colspan="1" rowspan="1">Prefix</th>
<th colspan="1" rowspan="1">XML Namespace</th>
<th colspan="1" rowspan="1">Specification</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" diff="add" rowspan="1">
<code><phrase diff="add">mtom</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">
<code><phrase diff="add">http://schemas.xmlsoap.org/ws/2004/09/policy/optimizedmimeserialization</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">[<loc href="http://131.107.72.15/MTOM_Service_Indigo/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">WS-OptimizedSerializationPolicy</phrase></loc>]</td>
</tr>
<tr diff="add">
<td colspan="1" rowspan="1">
<code>rmp</code>
</td>
<td colspan="1" rowspan="1">
<code>http://docs.oasis-open.org/ws-rx/wsrmp/200602</code>
</td>
<td colspan="1" rowspan="1">[<bibref ref="WS-RMPolicy"></bibref>]</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code>sp</code>
</td>
<td colspan="1" rowspan="1">
<code>http://schemas.xmlsoap.org/ws/2005/07/securitypolicy</code>
</td>
<td colspan="1" rowspan="1">[<bibref ref="WS-SecurityPolicy"></bibref>]</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code>wsa</code>
</td>
<td colspan="1" rowspan="1">
<code>http://www.w3.org/2005/08/addressing</code>
</td>
<td colspan="1" rowspan="1">[<bibref ref="WS-Addressing"></bibref>]</td>
</tr>
<tr diff="add">
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsap</phrase></code>
</td>
<td colspan="1" rowspan="1">
<code><phrase diff="add">http://www.w3.org/2006/05/addressing/wsdl</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">[<bibref ref="WS-AddressingPolicy"></bibref>]</td>
</tr>

	    <tr>
<td colspan="1" rowspan="1">
<code>wsdl11</code>
</td>
<td colspan="1" rowspan="1">
<code>http://schemas.xmlsoap.org/wsdl/</code>
</td>
<td colspan="1" rowspan="1">[<bibref ref="WSDL11"></bibref>]</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code>wsdl20</code>
</td>
<td colspan="1" rowspan="1">
<code>http://www.w3.org/2006/01/wsdl</code>
</td>
<td colspan="1" rowspan="1">[<bibref ref="WSDL20"></bibref>]</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code>wsoap12</code>
</td>
<td colspan="1" rowspan="1">
<code>http://schemas.xmlsoap.org/wsdl/soap12/</code>
</td>
<td colspan="1" rowspan="1">[<bibref ref="WSDL11BindingforSOAP12"></bibref>]</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">(none), </phrase>wsp</code>
</td>
<td colspan="1" rowspan="1">
<code><phrase diff="chg">http://www.w3.org/@@@@/@@/ws-policy</phrase></code>
</td>
<td colspan="1" rowspan="1">This specification</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code>wsse</code>
</td>
<td colspan="1" rowspan="1">
<code>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd</code>
</td>
<td colspan="1" rowspan="1">[<bibref ref="WS-Security"></bibref>]</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code>wsu</code>
</td>
<td colspan="1" rowspan="1">
<code>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd</code>
</td>
<td colspan="1" rowspan="1">[<bibref ref="WS-Security"></bibref>]</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code>xs</code>
</td>
<td colspan="1" rowspan="1">
<code>http://www.w3.org/2001/XMLSchema</code>
</td>
<td colspan="1" rowspan="1">[<bibref ref="XMLSchemaPart1"></bibref>]</td>
</tr>
</tbody>
</table>
<p>
	  All information items defined by this specification
	  are identified by the XML namespace URI [<bibref ref="XML-NS"></bibref>] <phrase diff="chg">http://www.w3.org/@@@@/@@/ws-policy. </phrase>A <xspecref diff="chg" href="http://www.w3.org/@@@@/@@/ws-policy" xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">normative XML
	  Schema</xspecref> [<bibref ref="XMLSchemaPart1"></bibref>, <bibref ref="XMLSchemaPart2"></bibref>] document can be obtained by
	dereferencing the XML namespace URI.</p>
<p>
	  In this document reference is made to the <att>wsu:Id</att>
	  attribute in a utility schema (<loc href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd</loc>). The
	  <att>wsu:Id</att> attribute was added to the utility schema
	  with the intent that other specifications requiring such an
	  Id could reference it (as is done here).
	</p>
<p>It is the intent of the W3C Web Services Policy Working Group that 
          the Web Services Policy 1.5 - Framework and Web Services Policy 1.5 - Attachment XML namespace URI will not change 
          arbitrarily with each subsequent revision of the corresponding 
          XML Schema documents but rather change only when a subsequent revision, 
          published as a WD, CR or PR draft results in non-backwardly compatible 
          changes from a previously published WD, CR or PR draft of the specification.</p>
<p>Under this policy, the following are examples of backwards compatible 
          changes that would not result in assignment of a new XML namespace URI:</p>
<ulist>
<item>
<p>Addition of new global element, attribute, complexType 
              and simpleType definitions.</p>
</item>
<item>
<p>Addition of new elements or attributes in locations 
              covered by a previously specified wildcard.</p>
</item>
<item>
<p>Modifications to the pattern facet of a type definition for which the 
              value-space of the previous definition remains valid or for 
              which the value-space of the preponderance of 
              instance would remain valid.</p>
</item>
<item>
<p>Modifications to the cardinality of elements for which the 
              value-space of possible instance documents conformant to 
              the previous revision of the schema would still be valid 
              with regards to the revised cardinality rule.</p>
</item>
</ulist>
</div2>
<div2 id="Glossary">
<head>Terminology</head>
<p>
	      The keywords "<rfc2119>MUST</rfc2119>", "<rfc2119>MUST
	      NOT</rfc2119>", "<rfc2119>REQUIRED</rfc2119>",
	      "<rfc2119>SHALL</rfc2119>", "<rfc2119>SHALL
	      NOT</rfc2119>", "<rfc2119>SHOULD</rfc2119>",
	      "<rfc2119>SHOULD NOT</rfc2119>",
	      "<rfc2119>RECOMMENDED</rfc2119>",
	      "<rfc2119>MAY</rfc2119>", and
	      "<rfc2119>OPTIONAL</rfc2119>" in this document are to be
	      interpreted as described in RFC 2119 [<bibref ref="RFC2119"></bibref>].
	    </p>
<p>We introduce the following terms that are used throughout this document:</p>
  
<glist diff="add" xml:base="file:///C:/2006/ws/policy/glossary-attachment.xml">
   
<gitem>
      <label>
         <loc href="#effective_policy" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">effective policy</loc>
      </label>
      <def>
         <p>the
<term>effective policy</term>, for a given <termref def="policy_subject">policy subject</termref>, is the 
combination of relevant policies. The relevant policies are those
attached to <termref def="policy_scope">policy scopes</termref> that
contain the <termref def="policy_subject">policy subject</termref>.</p>
      </def>
   </gitem>
   <gitem>
      <label>
         <loc href="#element_policy" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">element policy</loc>
      </label>
      <def>
         <p>The
	<term>element policy</term> is the <termref def="policy">policy</termref> attached to the <termref def="policy_subject">policy subjects</termref> associated with
	the element information item that contains it.</p>
      </def>
   </gitem>
   <gitem>
      <label>
         <loc href="#merge" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">merge</loc>
      </label>
      <def>
         <p>a <term>merge</term>
	consists of serializing each policy as a
	<termref def="policy_expression">policy expression</termref>, replacing their
	<el>wsp:Policy</el> element with a
	<el>wsp:All</el> element, and placing each as
	children of a wrapper <el>wsp:Policy</el>
	element.</p>
      </def>
   </gitem>
   <gitem>
      <label>
         <loc href="ws-policy-framework.html#policy" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">policy</loc>
      </label>
      <def>
         <p id="policy">A <term>policy</term> is a collection of 
	    <termref def="policy_alternative">policy alternatives</termref><phrase diff="chg">, </phrase></p>
      </def>
   </gitem>
   <gitem>
      <label>
         <loc href="ws-policy-framework.html#policy_alternative" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">policy alternative</loc>
      </label>
      <def>
         <p id="policy_alternative"><phrase diff="chg">a </phrase><term>policy alternative</term> 
	    is a collection of <termref def="policy_assertion">policy assertions</termref>.</p>
      </def>
   </gitem>
   <gitem>
      <label>
         <loc href="ws-policy-framework.html#policy_assertion" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">policy assertion</loc>
      </label>
      <def>
         <p id="policy_assertion">A <term>policy assertion</term> 
		represents an individual requirement, capability, or other property of a behavior.</p>
      </def>
   </gitem>
   <gitem>
      <label>
         <loc href="ws-policy-framework.html#policy_attachment" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">policy attachment</loc>
      </label>
      <def>
         <p id="policy_attachment">A 
	    <term>policy attachment</term> is a mechanism for associating 
	    <termref def="policy">policy</termref> with one or more <termref def="policy_scope">policy scopes</termref>.</p>
      </def>
   </gitem>
   <gitem>
      <label>
         <loc href="ws-policy-framework.html#policy_expression" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">policy expression</loc>
      </label>
      <def>
         <p id="policy_expression">A <term>policy expression</term> 
		is an XML Infoset representation of a <termref def="policy">policy</termref>, 
		either in a normal form or in an equivalent compact form. </p>
      </def>
   </gitem>
   <gitem>
      <label>
         <loc href="ws-policy-framework.html#policy_scope" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">policy scope</loc>
      </label>
      <def>
         <p id="policy_scope">A <term>policy scope</term> is a collection of 
	    <termref def="policy_subject">policy subjects</termref> to which a policy may apply.</p>
      </def>
   </gitem>
   <gitem>
      <label>
         <loc href="ws-policy-framework.html#policy_subject" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">policy subject</loc>
      </label>
      <def>
         <p id="policy_subject">A <term>policy subject</term> is an entity 
	    (e.g., an endpoint, message, resource, interaction) with which a 
	    <termref def="policy">policy</termref> can be associated. </p>
      </def>
   </gitem>
</glist>
  <!-- The following definitions are taken from the WS-Policy-Framework document. They need to be here for the automatic glossary generation. Use the value of the ID for the termdef element in ws-policy-framework.xml inside a p element.-->
<ulist diff="add" role="termreference">
<item>
<p><phrase diff="add">policy</phrase></p>
</item>
<item>
<p><phrase diff="add">policy_alternative</phrase></p>
</item>
<item>
<p><phrase diff="add">policy_assertion</phrase></p>
</item>
<item>
<p><phrase diff="add">policy_expression</phrase></p>
</item>
<item>
<p><phrase diff="add">policy_subject</phrase></p>
</item>
<item>
<p><phrase diff="add">policy_scope</phrase></p>
</item>
<item>
<p><phrase diff="add">policy_attachment</phrase></p>
</item>
</ulist>


</div2>
<div2 id="Example">
<head>Example</head>
<p>This specification defines several mechanisms for
	associating policies (Web Services Policy 1.5 - Framework, [<bibref ref="WS-Policy"></bibref>]) with various XML Web service entities. For
	brevity, we define two sample <termref def="policy_expression">policy expressions</termref> that the
	remainder of this document references. </p>
<p>
<phrase diff="del">The example in </phrase><specref ref="Table2"></specref> indicates a <termref def="policy">policy</termref> for reliable messaging [<bibref ref="WS-RMPolicy"></bibref>]. <phrase diff="del">The example in </phrase><specref ref="Table3"></specref>
	is a policy for securing messages using X509 certificates
	[<bibref ref="WS-SecurityPolicy"></bibref>].</p>
<example id="Table2">
<head>Example RM Policy Expression.</head>
<eg xml:space="preserve"><phrase diff="chg">(01) &lt;wsp:Policy
        xmlns:rmp="http://docs.oasis-open.org/ws-rx/wsrmp/200602"
        xmlns:wsp="http://www.w3.org/@@@@/@@/ws-policy"
        xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
        wsu:Id="RmPolicy" &gt;
(02)   &lt;rmp:RMAssertion&gt;
(03)     &lt;rmp:InactivityTimeout Milliseconds="600000" /&gt;
(04)     &lt;rmp:BaseRetransmissionInterval Milliseconds="3000" /&gt;
(05)     &lt;rmp:ExponentialBackoff /&gt;
(06)     &lt;rmp:AcknowledgementInterval Milliseconds="200" /&gt;
(07)   &lt;/rmp:RMAssertion&gt;
(08) &lt;/wsp:Policy&gt;</phrase></eg>
</example>
<example id="Table3">
<head>Example X509 Security Policy Expression.</head>
<eg xml:space="preserve"><phrase diff="chg">(01) &lt;wsp:Policy
        xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"
        xmlns:wsp="http://www.w3.org/@@@@/@@/ws-policy"
        xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
        wsu:Id="X509EndpointPolicy" &gt;
(02)   &lt;sp:AsymmetricBinding&gt;
(03)     &lt;wsp:Policy&gt;
(04)       &lt;sp:RecipientToken&gt;
(05)         &lt;wsp:Policy&gt;
(06)           &lt;sp:X509Token sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never"&gt;
(07)             &lt;wsp:Policy&gt;
(08)               &lt;sp:WssX509V3Token10 /&gt;
(09)             &lt;/wsp:Policy&gt;
(10)           &lt;/sp:X509Token&gt;
(11)         &lt;/wsp:Policy&gt;
(12)       &lt;/sp:RecipientToken&gt;
(13)       &lt;sp:InitiatorToken&gt;
(14)         &lt;wsp:Policy&gt;
(15)           &lt;sp:X509Token sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient" &gt;
(16)             &lt;wsp:Policy&gt;
(17)               &lt;sp:WssX509V3Token10 /&gt;
(18)             &lt;/wsp:Policy&gt;
(19)           &lt;/sp:X509Token&gt;
(20)         &lt;/wsp:Policy&gt;
(21)       &lt;/sp:InitiatorToken&gt;
(22)       &lt;sp:AlgorithmSuite&gt;
(23)         &lt;wsp:Policy&gt;
(24)           &lt;sp:Basic256Rsa15 /&gt;
(25)         &lt;/wsp:Policy&gt;
(26)       &lt;/sp:AlgorithmSuite&gt;
(27)       &lt;sp:Layout&gt;
(28)         &lt;wsp:Policy&gt;
(29)           &lt;sp:Lax /&gt;
(30)         &lt;/wsp:Policy&gt;
(31)       &lt;/sp:Layout&gt;
(32)       &lt;sp:IncludeTimestamp /&gt;
(33)       &lt;sp:OnlySignEntireHeadersAndBody /&gt;
(34)     &lt;/wsp:Policy&gt;
(35)   &lt;/sp:AsymmetricBinding&gt;
(36) &lt;/wsp:Policy&gt;</phrase></eg>
</example>
<p>The document containing both of these policy expressions is
	assumed to be located at
	<code>http://www.example.com/policies</code>.  Per Section
	<xspecref diff="chg" href="http://dev.w3.org/cvsweb/~checkout~/2006/ws/policy/ws-policy-framework.html?content-type=text/html;charset=utf-8/#Policy_Identification" xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3.2
	Policy Identification</xspecref> of Web Services Policy 1.5 - Framework [<bibref ref="WS-Policy"></bibref>], the URIs used for these <termref def="policy_expression">policy expressions</termref>
	in the remainder of this document are
	<code>http://www.example.com/policies#RmPolicy</code> and
	<code>http://www.example.com/policies#X509EndpointPolicy</code>,
	for the examples in <specref ref="Table2"></specref> and <specref ref="Table3"></specref>, respectively.</p>
</div2>
</div1>
<div1 id="rPolicyAttachment">
<head>Policy Attachment</head>
<p>This section defines two general-purpose mechanisms for
      associating <termref def="policy">policies</termref> with one or
      more <termref def="policy_subject">policy
      subjects</termref>. The first allows XML-based descriptions of
      resources (represented as XML elements) to associate policy as
      part of their intrinsic definition. The second allows policies
      to be associated with arbitrary policy subjects independently
      from their definition.</p>
<p>In addition it defines the processing rules for scenarios
      where multiple policies are attached to a policy subject.</p>
<div2 id="rEffectivePolicy">
<head>Effective Policy</head>
<p>
<termref def="policy">Policies</termref> will often be
	associated with a particular <termref def="policy_subject">policy subject</termref> using multiple
	<termref def="policy_attachment">policy
	attachments</termref>. For example, there may be attachments
	at different points in a WSDL description that apply to <phrase diff="add">one policy</phrase><phrase diff="del">a
	</phrase>subject, and other attachments may be made by UDDI and other
	mechanisms.</p>
<p>When multiple attachments are made, <termdef id="effective_policy" term="effective policy">the
<term>effective policy</term>, for a given <termref def="policy_subject">policy subject</termref>, is the 
combination of relevant policies. The relevant policies are those
attached to <termref def="policy_scope">policy scopes</termref> that
contain the <termref def="policy_subject">policy subject</termref>.</termdef>
</p>
<p>This combination can be achieved by: <termdef id="merge" term="merge">a <term>merge</term>
	consists of serializing each policy as a
	<termref def="policy_expression">policy expression</termref>, replacing their
	<el>wsp:Policy</el> element with a
	<el>wsp:All</el> element, and placing each as
	children of a wrapper <el>wsp:Policy</el>
	element.</termdef> The resulting policy expression is considered to
	represent the combined policy of all of the attachments to
	that <phrase diff="add">policy </phrase>subject.</p>
<p>Such calculated policy expressions have no meaningful IRI of their own. </p>
</div2>
<div2 id="PolicyAttachmentMechanisms">
<head>Policy Attachment Mechanisms</head>
<p>This section defines two general-purpose mechanisms for
	associating policies [<bibref ref="WS-Policy"></bibref>] with one or
	more <termref def="policy_subject">policy
	subjects</termref>. The first allows XML-based descriptions of
	resources to associate <termref def="policy">policy</termref>
	as part of their intrinsic definition. The second allows
	policies to be associated with arbitrary policy subjects
	independently from their definition.</p>
</div2>
<div2 id="XMLElementAttachement">
<head>XML Element Attachment</head>
<p>It is often desirable to associate policies with <phrase diff="add">Web</phrase><phrase diff="del">the XML
	elements describing a subject; </phrase><phrase diff="chg">services policy subjects </phrase><phrase diff="add">represented</phrase><phrase diff="del">formats
	such </phrase>as <phrase diff="add">XML</phrase><phrase diff="del">WSDL to be easily used </phrase><phrase diff="chg">elements (i.e., WSDL 1.1 </phrase><phrase diff="add">elements</phrase><phrase diff="del">Policy
	Framework </phrase><phrase diff="chg">- </phrase>Section <specref ref="AttachingPolicyUsingWSDL1.1"></specref> for the specific details
	of WSDL attachment).</p>
<p><phrase diff="add">Since policy assertions are strongly typed by the authors,</phrase><phrase diff="del">The </phrase><phrase diff="add">the </phrase>precise
	semantics of how element policy is to be processed once
	discovered is domain-specific; however, implementations are
	likely to follow the precedent specified in the section below
	on WSDL [<bibref ref="WSDL11"></bibref>] and Policy.</p>
<p>This specification defines a global attribute that allows
	<termref def="policy_expression">policy expressions</termref> to be attached to an arbitrary XML
	element. The following is the schema definition for the
	<att>wsp:PolicyURIs</att> attribute:</p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;xs:schema&gt;
  &lt;xs:attribute name="PolicyURIs"&gt;
    &lt;xs:simpleType&gt;
	&lt;xs:list itemType="xs:anyURI" /&gt;
    &lt;/xs:simpleType&gt;
  &lt;/xs:attribute&gt;
&lt;/xs:schema&gt;</eg>
<p>The namespace URI [<bibref ref="XML-NS"></bibref>] for this attribute is <code><phrase diff="chg">http://www.w3.org/@@@@/@@/ws-policy</phrase></code>.</p>
<p>The <att>wsp:PolicyURIs</att> attribute contains a white
space-separated list of one or more IRIs  [<bibref ref="RFC3987"></bibref>]. When this attribute is used,
each of the values identifies a <termref def="policy_expression">policy expression</termref> as defined by
[<bibref ref="WS-Policy"></bibref>]. If more than one IRI is specified, the
individual referenced <termref def="policy">policies</termref> need to be <termref def="merge">merged</termref> together
to form a single element <termref def="policy_expression">policy expression</termref>. 
The resultant <termref def="policy">policy</termref> is
then associated with the element information item's <termref def="element_policy">element policy</termref>
property. <termdef id="element_policy" term="element policy">The
	<term>element policy</term> is the <termref def="policy">policy</termref> attached to the <termref def="policy_subject">policy subjects</termref> associated with
	the element information item that contains it.</termdef>
</p>
<p>Note that the <termref def="policy_scope">policy scope</termref> of the attachment is specific to the
<termref def="policy_attachment">policy attachment</termref> Mechanism using it; accordingly, any <termref def="policy_attachment">policy
attachment</termref> mechanism using this attribute <rfc2119>MUST</rfc2119>
define the <termref def="policy_scope">policy scope</termref> of the attachment.</p>
<p>An example of <termref def="element_policy">element policy</termref> through the use of this global
attribute is given below using the sample policies stated in Section
<specref ref="Example"></specref>.</p>
<p>If the <termref def="policy">policies</termref> referenced by the following XML element</p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;MyElement wsp:PolicyURIs="
   http://www.example.com/policies#RmPolicy
   http://www.example.com/policies#X509EndpointPolicy" /&gt;</eg>
<p>have been processed and <termref def="merge">merged</termref>, 
	it would result in an <termref def="element_policy">element policy</termref> 
	whose XML 1.0 representation is listed in <specref ref="Table4"></specref>:</p>
<example id="Table4">
<head>Example Merged Policy Expression.</head>
<eg xml:space="preserve"><phrase diff="chg">(01) &lt;wsp:Policy
        xmlns:rmp="http://docs.oasis-open.org/ws-rx/wsrmp/200602"
        xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"
        xmlns:wsp="http://www.w3.org/@@@@/@@/ws-policy" &gt;
(02)   &lt;rmp:RMAssertion&gt;
(03)     &lt;rmp:InactivityTimeout Milliseconds="600000" /&gt;
(04)       &lt;rmp:BaseRetransmissionInterval Milliseconds="3000" /&gt;
(05)       &lt;rmp:ExponentialBackoff /&gt;
(06)       &lt;rmp:AcknowledgementInterval Milliseconds="200" /&gt;
(07)     &lt;/rmp:RMAssertion&gt;
(08)   &lt;sp:AsymmetricBinding&gt;
(09)     &lt;wsp:Policy&gt;
(10)       &lt;!-- Details omitted for readability --&gt;
(11)       &lt;sp:IncludeTimestamp /&gt;
(12)       &lt;sp:OnlySignEntireHeadersAndBody /&gt;
(13)     &lt;/wsp:Policy&gt;
(14)   &lt;/sp:AsymmetricBinding&gt;
(15) &lt;/wsp:Policy&gt;</phrase></eg>
</example>
<p>Note that this <termref def="element_policy">element policy</termref> has no meaningful IRI.</p>
<p>The presence of the <att>wsp:PolicyURIs</att> attribute does not
prohibit implementations from using additional mechanisms for
associating <termref def="policy_expression">policy expressions</termref> with XML-based constructs.</p>
<p>Alternatively, rather than using the global attribute, XML elements
may use the <el>wsp:Policy</el> or <el>wsp:PolicyReference</el> elements directly as
children, in order to support <termref def="element_policy">element policy</termref> <phrase diff="add">(Per Section
	</phrase><xspecref diff="add" href="http://dev.w3.org/cvsweb/~checkout~/2006/ws/policy/ws-policy-framework.html?content-type=text/html;charset=utf-8/#Policy_References" xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">4.3.4
	Policy References</phrase></xspecref> <phrase diff="add">of Web Services Policy 1.5 - Framework [</phrase><bibref diff="add" ref="WS-Policy"></bibref><phrase diff="add">]),</phrase><phrase diff="del">, </phrase>and the semantics for
this are the same as for the use of the global attribute. For example,
an alternative way of attaching the policies in the above example,
using child elements, would be as follows: </p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;MyElement&gt;
  &lt;wsp:PolicyReference
     URI="http://www.example.com/policies#RmPolicy" /&gt;
  &lt;wsp:PolicyReference
     URI="http://www.example.com/policies#X509EndpointPolicy" /&gt;
&lt;MyElement/&gt;</eg>
</div2>
<div2 id="ExternalPolicyAttachment">
<head>External Policy Attachment</head>
<p>This mechanism allows <termref def="policy">policies</termref> to be associated with a <termref def="policy_subject">policy
subject</termref> independent of that subject's definition and/or representation
through the use of a <el>wsp:PolicyAttachment</el>
gelement.</p>
<p>This element has three components: the <termref def="policy_scope">policy scope</termref> of the
attachment, the <termref def="policy_expression">policy expressions</termref> being bound, and optional security
information. The <termref def="policy_scope">policy scope</termref> of the attachment is defined using one
or more extensible domain expressions that identify <termref def="policy_subject">policy subjects</termref>,
typically using IRIs.</p>
<p>Domain expressions identify the domain of the association. That is,
the set of <termref def="policy_subject">policy subjects</termref> that will be considered for inclusion in
the scope using an extensible domain expression model. Domain
expressions identify <termref def="policy_subject">policy subjects</termref> to be included within the <termref def="policy_scope">policy
scope</termref>. Domain expressions yield an unordered set of <termref def="policy_subject">policy subjects</termref>
for consideration. </p>
<p>For the purposes of attaching <termref def="policy">policy</termref> to a <termref def="policy_subject">policy subject</termref> through
this mechanism, any <termref def="policy_expression">policy expression</termref> contained inside of the
<el>wsp:AppliesTo</el> element <rfc2119>MUST NOT</rfc2119> be
considered in scope. For example, an Endpoint Reference may be used as
a domain expression, and it may contain <termref def="policy_expression">policy expressions</termref> within it,
but this <termref def="policy_expression">policy expressions</termref> are not considered in scope with respect
to the <el>wsp:PolicyAttachment</el> element using it.</p>
<p>The following is the pseudo-schema for the <el>wsp:PolicyAttachment</el> element:</p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;wsp:PolicyAttachment … &gt;
  &lt;wsp:AppliesTo&gt;
    &lt;x:DomainExpression/&gt; +
  &lt;/wsp:AppliesTo&gt;
  ( &lt;wsp:Policy&gt;…&lt;/wsp:Policy&gt; |
    &lt;wsp:PolicyReference&gt;…&lt;/wsp:PolicyReference&gt; ) +
  &lt;wsse:Security&gt;…&lt;/wsse:Security&gt; ?
  …
&lt;/wsp:PolicyAttachment&gt;</eg>
<p>The following describes the attributes and elements listed in the pseudo-schema outlined above:</p>
<glist>
<gitem>
<label>
<el>/wsp:PolicyAttachment</el>
</label>
<def>
<p>This describes an external <termref def="policy_attachment">policy attachment</termref>.</p>
</def>
</gitem>
<gitem>
<label>
<el>/wsp:PolicyAttachment/wsp:AppliesTo</el>
</label>
<def>
<p>This required element's children describe the <termref def="policy_scope">policy scope</termref>.</p>
</def>
</gitem>
<gitem>
<label>
<el>/wsp:PolicyAttachment/wsp:AppliesTo/{any}</el>
</label>
<def>
<p>These child elements <rfc2119>MUST</rfc2119> specify and/or
refine the domain expression(s) that define the <termref def="policy_scope">policy scope</termref>. They
<rfc2119>MUST NOT</rfc2119> contradict the semantics of their root
element; if an element is not recognized, it <rfc2119>SHOULD</rfc2119>
be ignored. Domain expressions are XML elements that describe <termref def="policy_subject">policy
subjects</termref> within a <termref def="policy_scope">policy scope</termref>. When more than one domain expression
is present, the <termref def="policy_scope">policy scope</termref> contains the union of the <termref def="policy_subject">policy subjects</termref>
identified by each expression. </p>
</def>
</gitem>
<gitem>
<label>
<el>/wsp:PolicyAttachment/wsp:Policy</el>
</label>
<def>
<p>This element is a <termref def="policy_expression">policy expression</termref> representing a <termref def="policy">policy</termref> that
is attached to the <termref def="policy_subject">policy subjects</termref> within the <termref def="policy_scope">policy scope</termref>.</p>
</def>
</gitem>
<gitem>
<label>
<el>/wsp:PolicyAttachment/wsp:PolicyReference</el>
</label>
<def>
<p>This element references a <termref def="policy_expression">policy expression</termref> to be attached to
the <termref def="policy_subject">policy subjects</termref> that are in the <termref def="policy_scope">policy scope</termref>. Refer to Web Services Policy 1.5 - Framework [<bibref ref="WS-Policy"></bibref>]
for additional details.</p>
</def>
</gitem>
<gitem>
<label>
<el>/wsp:PolicyAttachment/wsse:Security</el>
</label>
<def>
<p>This optional element allows security information such as
signatures to be included. The syntax of this element is described in
WS-Security [<bibref ref="WS-Security"></bibref>].</p>
</def>
</gitem>
<gitem>
<label>
<att>/wsp:PolicyAttachment/@{any}</att>
</label>
<def>
<p>Additional attributes <rfc2119>MAY</rfc2119> be specified but
<rfc2119>MUST NOT</rfc2119> contradict the semantics of the owner
element; if an attribute is not recognized, it
<rfc2119>SHOULD</rfc2119> be ignored.</p>
</def>
</gitem>
<gitem>
<label>
<el>/wsp:PolicyAttachment/{any}</el>
</label>
<def>
<p>Other child elements for binding constructs
<rfc2119>MAY</rfc2119> be specified but <rfc2119>MUST NOT</rfc2119>
contradict the semantics of the parent element; if an element is not
recognized, it <rfc2119>SHOULD</rfc2119> be ignored.</p>
</def>
</gitem>
</glist>
<p>Domain expressions are used to identify entities such as endpoints, messages 
  or resources with which a policy can be associated. For example, domain expressions may 
  be used to refer to WSDL 1.1 definitions, WSDL 2.0 components, endpoint references, etc.</p>
<p>The following example illustrates the use of this mechanism with an
EndpointReference domain expression for a deployed endpoint as defined
in Web Services Addressing [<bibref ref="WS-Addressing"></bibref>]:</p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;wsp:PolicyAttachment&gt;
  &lt;wsp:AppliesTo&gt;
    &lt;wsa:EndpointReference&gt;
      &lt;wsa:Address&gt;http://www.example.com/acct&lt;/wsa:Address&gt;
    &lt;/wsa:EndpointReference&gt;
  &lt;/wsp:AppliesTo&gt;
  &lt;wsp:PolicyReference
     URI="http://www.example.com/policies#RmPolicy" /&gt;
&lt;/wsp:PolicyAttachment&gt;</eg>
<p>In this example, the <termref def="policy_expression">policy expression</termref> at
<code>http://www.example.com/policies#RmPolicy</code> applies to all
interactions with the endpoint at
<code>http://www.example.com/acct</code>.</p>
</div2>
</div1>
<div1 id="AttachingPolicyUsingWSDL1.1">
<head>Attaching Policies Using WSDL 1.1</head>
<p>The <rfc2119>RECOMMENDED</rfc2119> means of associating a <termref def="policy">policy</termref>
with a <termref def="policy_subject">policy subject</termref> that has a WSDL 1.1 [<bibref ref="WSDL11"></bibref>]
description is to attach a reference to the <termref def="policy">policy</termref> within the WSDL
component corresponding to the target <termref def="policy_subject">policy subject</termref>. </p>
<p>WSDL 1.1 disallows the use of extensibility elements on certain
elements and the use of extensibility attributes on others. However,
the WS-I Basic Profile 1.1 [<bibref ref="BP11"></bibref>] overrules this
restriction and allows element extensibility everywhere. Therefore,
the <termref def="policy">policy</termref> reference <rfc2119>SHOULD</rfc2119> be attached using
<el>wsp:PolicyReference</el> as child element unless it is
absolutely necessary to maintain the original WSDL 1.1 restriction, in
which case the <att>@wsp:PolicyURIs</att> attribute MAY be used
for the following WSDL elements:</p>
<ulist>
<item>
<p>
<el>wsdl11:portType</el>
</p>
</item>
<item>
<p>
<el>wsdl11:portType/wsdl11:operation/wsdl11:input</el>
</p>
</item>
<item>
<p>
<el>wsdl11:portType/wsdl11:operation/wsdl11:output</el>
</p>
</item>
<item>
<p>
<el>wsdl11:portType/wsdl11:operation/wsdl11:fault</el>
</p>
</item>
</ulist>
<p>If it is necessary to include the actual <termref def="policy_expression">policy expressions</termref> within
the WSDL description itself, it is <rfc2119>RECOMMENDED</rfc2119> that
their <el>wsp:Policy</el> elements be included as children of
the <el>wsdl11:definition</el> element, and referenced using
the mechanisms just described. Alternatively, the <termref def="policy_expression">policy expressions</termref>
<rfc2119>MAY</rfc2119> be made available through some other means,
such as WS-MetadataExchange [<bibref ref="WS-MetadataExchange"></bibref>].</p>
<p>To ensure that consumers of policy-annotated WSDL elements are
capable of processing such <termref def="policy_attachment">policy attachments</termref>, attachments using
<el>wsp:PolicyReference</el>
<rfc2119>SHOULD</rfc2119> be
marked as a mandatory extension (e.g., with a
<code>@wsdl11:required="true"</code> attribute).</p>
<p>The rest of this section defines how to interpret the <termref def="policy_attachment">policy
attachments</termref> when they appear within a WSDL description. </p>
<div2 id="CalculatingEffectivyPolicywithWSDL1.1">
<head>Calculating Effective Policy in WSDL 1.1</head>
<p>
<termref def="policy_attachment">Policy attachments</termref> in WSDL 1.1 can be used to associate <termref def="policy">policies</termref>
with four different types of <termref def="policy_subject">policy subject</termref>, identified as the service
policy subject, the endpoint policy subject, the operation policy
subject, and the message policy subject. These <phrase diff="add">policy </phrase>subjects should be
considered as nested, due to the hierarchical nature of WSDL. </p>
<p>When attaching a <termref def="policy">policy</termref> to a WSDL element, a <termref def="policy_scope">policy scope</termref> is
implied for that attachment. The <termref def="policy_scope">policy scope</termref> only contains the <termref def="policy_subject">policy
subject</termref> associated with that element and not those associated with the
children of that element. Therefore, it is
<rfc2119>RECOMMENDED</rfc2119> that each <termref def="policy_assertion">policy assertion</termref> contained
within a WSDL element's <termref def="element_policy">element policy</termref> should have the correct
semantic such that the <phrase diff="add">policy </phrase>subject for that assertion is that WSDL
element. For example, assertions that describe behaviours regarding
the manipulation of messages should only be contained within policies
attached to WSDL message elements.</p>
<p>Figure 1 represents how the <termref def="effective_policy">effective policies</termref>, with regard to
WSDL, are calculated for each of these <termref def="policy_subject">policy subjects</termref>. In the
diagram, the dashed boxes represent <termref def="policy_scope">policy scope</termref>s implied by WSDL
elements. For a particular <termref def="policy_subject">policy subject</termref>, the <termref def="effective_policy">effective policy</termref>
<rfc2119>MUST</rfc2119>
<emph>merge</emph> the <termref def="element_policy">element policy</termref> of each
element with a <termref def="policy_scope">policy scope</termref> that contains the <termref def="policy_subject">policy subject</termref>.</p>
<p>For abstract WSDL definitions, the <termref def="element_policy">element policy</termref> is considered an
intrinsic part of the definition and applies to all uses of that
definition. In particular, it <rfc2119>MUST</rfc2119> be
<termref def="merge">merged</termref> into the <termref def="effective_policy">effective policy</termref> of every implementation
of that abstract WSDL definition.</p>
<p>Policies that are attached to a deployed resource (e.g., services
or ports) are only considered in the <termref def="effective_policy">effective policy</termref> of that deployed
resource itself.</p>
<graphic alt="Effective Policy and Policy Scopes in WSDL" id="Figure1" source="effective-policy-scope.jpg" xlink:actuate="onLoad" xlink:show="embed" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"></graphic>
<p>(This graphic is also available in SVG format <loc href="effective-policy-scope.svg" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">here</loc>.)</p>
<p>When attaching policies at different levels of the WSDL hierarchy, care must be taken. 
A message exchange with an endpoint <rfc2119>MAY</rfc2119> be described by the 
<termref def="effective_policy">effective policies</termref> 
in all four subject types simultaneously.</p>
<p>For example, in <specref ref="Figure1"></specref>, for a particular input message to a deployed
endpoint, there are four <termref def="policy_subject">policy subjects</termref> involved, each with their own
<termref def="effective_policy">effective policy</termref>. There is an <termref def="effective_policy">effective policy</termref> for the message, as
well as an <termref def="effective_policy">effective policy</termref> for the parent operation of that message,
an <termref def="effective_policy">effective policy</termref> for the deployed endpoint, and the <termref def="effective_policy">effective
policy</termref> for the service as a whole. All four <termref def="effective_policy">effective policies</termref> are
applicable in relation to that specific input message.</p>
<p>It is <rfc2119>RECOMMENDED</rfc2119> that, where specific <termref def="policy_assertion">policy
assertions</termref> associated with one <termref def="policy_subject">policy subject</termref> are only compatible with
specific <termref def="policy_assertion">policy assertions</termref> on another <termref def="policy_subject">policy subject</termref> in the same
hierarchical chain, the policies containing these assertions should be
attached within a single WSDL binding hierarchy. </p>
<p>For any given port, the <termref def="policy_alternative">policy
alternatives</termref> for each <termref def="policy_subject">policy
subject</termref> type <rfc2119>SHOULD</rfc2119> be compatible with
each of the <termref def="policy_attachment">policy
alternatives</termref> at each of the <termref def="policy_subject">policy subjects</termref> parent and child
<termref def="policy_subject">policy subjects</termref>, such that
choices between <termref def="policy_alternative">policy
alternatives</termref> at each level are independent of each
other.</p>
<p>The rest of this section describes these <termref def="policy_subject">policy subject</termref> types, and
how the <termref def="effective_policy">effective policy</termref> for each <termref def="policy_subject">policy subject</termref> is calculated.</p>
<div3 id="ServicePolicySubject">
<head>Service Policy Subject</head>
<p>The following WSDL 1.1 element is considered as the service policy subject:</p>
<ulist>
<item>
<p>
<el>wsdl11:service</el>
</p>
</item>
</ulist>
<p>This element <rfc2119>MAY</rfc2119> have <termref def="element_policy">element policy</termref> as per
Section <specref ref="rPolicyAttachment"></specref>, and if present
<rfc2119>MUST</rfc2119> be <termref def="merge">merged</termref> into the <termref def="effective_policy">effective policy</termref> of the
WSDL service policy subject.</p>
<p>A policy associated with a service policy subject applies to any 
  message exchange using any of the endpoints offered by that service.</p>
</div3>
<div3 id="EndpointPolicySubject">
<head>Endpoint Policy Subject</head>
<p>The following WSDL 1.1 elements collectively describe an endpoint:</p>
<ulist>
<item>
<p>
<el>wsdl11:port</el>
</p>
</item>
<item>
<p>
<el>wsdl11:portType</el>
</p>
</item>
<item>
<p>
<el>wsdl11:binding</el>
</p>
</item>
</ulist>
<p>These elements <rfc2119>MAY</rfc2119> have <termref def="element_policy">element policy</termref> as per Section <specref ref="rPolicyAttachment"></specref>. The <termref def="policy_scope">policy scope</termref> implied by each of these elements contains the endpoint policy subject representing the deployed endpoint.</p>
<p>Since the <el>wsdl11:portType</el> may be used by more than one
binding, it is <rfc2119>RECOMMENDED</rfc2119> that only policies
containing abstract (i.e., binding independent) assertions should be
  attached to this type of element.</p>
<p>Policies associated with an endpoint 
  policy subject apply to any message exchange made using that endpoint.</p>
<p>The <termref def="effective_policy">effective policy</termref> for a WSDL endpoint policy subject includes
the <termref def="element_policy">element policy</termref> of the <el>wsdl11:port</el> element that defines
the endpoint <termref def="merge">merged</termref> with the <termref def="element_policy">element policy</termref> of the
referenced <el>wsdl11:binding</el> element and the <termref def="element_policy">element policy</termref> of
the referenced <el>wsdl11:portType</el> element that defines the
interface of the endpoint.</p>
</div3>
<div3 id="OperationPolicySubject">
<head>Operation Policy Subject</head>
<p>The following WSDL 1.1 elements collectively describe an operation:</p>
<ulist>
<item>
<p>
<el>wsdl11:portType/wsdl11:operation</el>
</p>
</item>
<item>
<p>
<el>wsdl11:binding/wsdl11:operation</el>
</p>
</item>
</ulist>
<p>These elements <rfc2119>MAY</rfc2119> have <termref def="element_policy">element policy</termref> as per Section <specref ref="rPolicyAttachment"></specref>. </p>
<p>The <termref def="policy_scope">policy scope</termref> implied by each of these elements contains the
operation policy subject representing the specific operation of the
endpoint policy subject.</p>
<p>Since the <el>wsdl11:portType/wsdl11:operation</el> may be used by
more than one binding, it is <rfc2119>RECOMMENDED</rfc2119> that only
policies containing abstract (i.e., binding independent) assertions
should be attached to this type of element.</p>
<p>Policies associated with an operation policy subject apply to 
  the message exchange described by that operation.</p>
<p>The <termref def="effective_policy">effective policy</termref> for a WSDL operation policy subject is
calculated in relation to a specific port, and includes the <termref def="element_policy">element
policy</termref> of the <el>wsdl11:portType/wsdl11:operation</el> element that
defines the operation <termref def="merge">merged</termref> with that of the
corresponding <el>wsdl11:binding/wsdl11:operation</el> element.</p>
</div3>
<div3 id="MessagePolicySubject">
<head>Message Policy Subject</head>
<p>The following WSDL 1.1 elements are used to describe messages:</p>
<ulist>
<item>
<p>
<el>wsdl11:message</el>
</p>
</item>
<item>
<p>
<el>wsdl11:portType/wsdl11:operation/wsdl11:input</el>
</p>
</item>
<item>
<p>
<el>wsdl11:portType/wsdl11:operation/wsdl11:output</el>
</p>
</item>
<item>
<p>
<el>wsdl11:portType/wsdl11:operation/wsdl11:fault</el>
</p>
</item>
<item>
<p>
<el>wsdl11:binding/wsdl11:operation/wsdl11:input</el>
</p>
</item>
<item>
<p>
<el>wsdl11:binding/wsdl11:operation/wsdl11:output</el>
</p>
</item>
<item>
<p>
<el>wsdl11:binding/wsdl11:operation/wsdl11:fault</el>
</p>
</item>
</ulist>
<p>These elements <rfc2119>MAY</rfc2119> have <termref def="element_policy">element policy</termref> as per Section <specref ref="rPolicyAttachment"></specref>.</p>
<p>The <termref def="policy_scope">policy scope</termref> implied by these elements contains the message
policy subject representing the specific input, output, or fault
message in relation to the operation policy subject.</p>
<p>Policies associated with a message policy subject apply to that 
  message (i.e. input, output or fault message).</p>
<p>The <termref def="effective_policy">effective policy</termref> for a specific WSDL message (i.e., input,
output, or fault message) is calculated in relation to a specific
port, and includes the <termref def="element_policy">element policy</termref> of the <el>wsdl11:message</el>
element that defines the message's type <termref def="merge">merged</termref> with the
<termref def="element_policy">element policy</termref> of the <el>wsdl11:binding</el> and
<el>wsdl11:portType</el> message definitions that describe that
message. </p>
<p>For example, the <termref def="effective_policy">effective policy</termref> of a specific input message for a
specific port would be the <emph>merge</emph> of the
<el>wsdl11:message</el> element defining the message type, the
<el>wsdl11:portType/wsdl11:operation/wsdl11:input</el> element, and
the corresponding
<el>wsdl11:binding/wsdl11:operation/wsdl11:input</el> element for that
message.</p>
<p>Since a <el>wsdl11:message</el> may be used by more than one
<el>wsdl11:portType</el>, it is <rfc2119>RECOMMENDED</rfc2119> that
only policies containing abstract (i.e., binding independent)
assertions should be attached to this type of element.</p>
<p>Since <el>wsdl11:input</el>, <el>wsdl11:output</el>, and
<el>wsdl11:fault</el> elements in a
 <el>wsdl11:portType/wsdl11:operation</el> may be used by more than
one binding, it is <rfc2119>RECOMMENDED</rfc2119> that only policies
containing abstract (i.e., binding independent) assertions should be
attached to these types of elements.</p>
<p>Care should be taken when attaching policies to outbound messages
as the result may not be what is expected. For example, expressing a
choice on a service's outbound message without a mechanism for a
requester of that service to communicate its choice to the service
before the outbound message is sent may not result in the desired
behaviours. It is therefore <rfc2119>RECOMMENDED</rfc2119> that <termref def="policy_alternative">policy
alternatives</termref> on outbound messages <rfc2119>SHOULD</rfc2119> be avoided
without the use of some form of mutual <termref def="policy">policy</termref> exchange between the
parties involved.</p>
</div3>
<div3 id="Example2">
<head>Example</head>
<p>As an example of the combination of these <termref def="policy_subject">policy subjects</termref> and
<termref def="effective_policy">effective policy</termref> calculation, consider the WSDL type definition in
<specref ref="Table5"></specref> that references policies. </p>
<example id="Table5">
<head>Example Policy Attached to WSDL.</head>
<eg xml:space="preserve"><phrase diff="chg">(01) &lt;wsdl11:definitions name="StockQuote"
        targetNamespace="http://www.example.com/stock/binding"
        xmlns:tns="http://www.example.com/stock/binding"
        xmlns:fab="http://www.example.com/stock"
        xmlns:rmp="http://docs.oasis-open.org/ws-rx/wsrmp/200602"
        xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"
        xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
        xmlns:wsoap12="http://schemas.xmlsoap.org/wsdl/soap12/"
        xmlns:wsp="http://www.w3.org/@@@@/@@/ws-policy"
        xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" &gt;
(02)   &lt;wsp:Policy wsu:Id="RmPolicy" &gt;
(03)     &lt;rmp:RMAssertion&gt;
(04)       &lt;rmp:InactivityTimeout Milliseconds="600000" /&gt;
(05)       &lt;rmp:BaseRetransmissionInterval Milliseconds="3000" /&gt;
(06)       &lt;rmp:ExponentialBackoff /&gt;
(07)       &lt;rmp:AcknowledgementInterval Milliseconds="200" /&gt;
(08)     &lt;/rmp:RMAssertion&gt;
(09)   &lt;/wsp:Policy&gt;
(10)     &lt;wsp:Policy wsu:Id="X509EndpointPolicy" &gt;
(11)       &lt;sp:AsymmetricBinding&gt;
(12)         &lt;wsp:Policy&gt;
               &lt;!-- Details omitted for readability --&gt;
(13)           &lt;sp:IncludeTimestamp /&gt;
(14)           &lt;sp:OnlySignEntireHeadersAndBody /&gt;
(15)         &lt;/wsp:Policy&gt;
(16)       &lt;/sp:AsymmetricBinding&gt;
(17)     &lt;/wsp:Policy&gt;
(18)     &lt;wsp:Policy wsu:Id="SecureMessagePolicy" &gt;
(19)       &lt;sp:SignedParts&gt;
(20)         &lt;sp:Body /&gt;
(21)       &lt;/sp:SignedParts&gt;
(22)       &lt;sp:EncryptedParts&gt;
(23)         &lt;sp:Body /&gt;
(24)       &lt;/sp:EncryptedParts&gt;
(25)     &lt;/wsp:Policy&gt;
(26)     &lt;wsdl11:import namespace="http://www.example.com/stock"
            location="http://www.example.com/stock/stock.wsdl" /&gt;
(27)     &lt;wsdl11:binding name="StockQuoteSoapBinding" type="fab:Quote" &gt;
(28)       &lt;wsoap12:binding style="document"
(29)          transport="http://schemas.xmlsoap.org/soap/http" /&gt;
(30)       &lt;wsp:PolicyReference URI="#RmPolicy" wsdl11:required="true" /&gt;
(31)       &lt;wsp:PolicyReference URI="#X509EndpointPolicy" wsdl11:required="true" /&gt;
(32)       &lt;wsdl11:operation name="GetLastTradePrice" &gt;
(33)         &lt;wsoap12:operation soapAction="http://www.example.com/stock/Quote/GetLastTradePriceRequest" /&gt;
(34)           &lt;wsdl11:input&gt;
(35)             &lt;wsoap12:body use="literal" /&gt;
(36)             &lt;wsp:PolicyReference URI="#SecureMessagePolicy"
                                      wsdl11:required="true" /&gt;
(37)           &lt;/wsdl11:input&gt;
(38)           &lt;wsdl11:output&gt;
(39)             &lt;wsoap12:body use="literal" /&gt;
(40)             &lt;wsp:PolicyReference URI="#SecureMessagePolicy"
(41)                                  wsdl11:required="true" /&gt;
(42)           &lt;/wsdl11:output&gt;
(43)       &lt;/wsdl11:operation&gt;
(44)     &lt;/wsdl11:binding&gt;
(45) &lt;/wsdl11:definitions&gt;</phrase></eg>
</example>
<p>For endpoints bound to <code>StockQuoteSoapBinding</code>, the <termref def="effective_policy">effective policy</termref>
of the endpoint is listed in <specref ref="Table4"></specref> (above). For
the <code>GetLastTradePrice</code> operation, an additional
message-level <termref def="effective_policy">effective policy</termref> is in effect for the input message,
whose XML 1.0 representation is listed in <specref ref="Table6"></specref>.</p>
<example id="Table6">
<head>Example Message Security Policy Expression.</head>
<eg xml:space="preserve"><phrase diff="chg">(01) &lt;wsp:Policy
        xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"
        xmlns:wsp="http://www.w3.org/@@@@/@@/ws-policy"
        xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
        wsu:Id="SecureMessagePolicy" &gt;
(02)   &lt;sp:SignedParts&gt;
(03)     &lt;sp:Body /&gt;
(04)   &lt;/sp:SignedParts&gt;
(05)   &lt;sp:EncryptedParts&gt;
(06)     &lt;sp:Body /&gt;
(07)   &lt;/sp:EncryptedParts&gt;
(08) &lt;/wsp:Policy&gt;</phrase></eg>
</example>
</div3>
</div2>
</div1>
<div1 diff="add" id="ws-policy-attachment-for-wsdl20">
<head><phrase diff="add">WS-Policy Attachment for WSDL 2.0</phrase></head>
<p><phrase diff="add">This section describes a mechanism for associating policy expressions with Web
                service constructs in WSDL 2.0. The mechanism consists of:</phrase></p>
<ulist>
<item>
<p><phrase diff="add">A model for attaching policies to WSDL 2.0 constructs. The model defines:</phrase><ulist>
<item>
<p><phrase diff="add">A partitioning of WSDL constructs into service, endpoint, operation
                            and message policy subjects.</phrase></p>
</item>
<item>
<p><phrase diff="add">The semantics of attaching a policy to each policy subject.</phrase></p>
</item>
<item>
<p><phrase diff="add">How to combine policies attached to more than one WSDL component
                            within a single policy subject.</phrase></p>
</item>
</ulist>
</p>
</item>
<item>
<p><phrase diff="add">An XML representation of policy expressions attached to WSDL 2.0 constructs
                    and annotating those policy expressions as required extensions using the
                    WSDL-defined extensibility flag </phrase><code><phrase diff="add">@wsdl20:required</phrase></code><phrase diff="add">.</phrase></p>
</item>
</ulist>
<p>
<specref ref="XMLNamespaces"></specref> <phrase diff="add">lists all the XML Namespaces that are used in this section. (XML
                elements without a namespace prefix are from the Web Services Policy XML Namespace.)</phrase></p>
<div2 id="wsdl20-example">
<head><phrase diff="add">Example</phrase></head>
<p><phrase diff="add">The example below illustrates the use of WS-Policy Attachment for WSDL 2.0:</phrase></p>
<example id="table-wsdl20-example">
<head><phrase diff="add">Example Policy Attached to WSDL 2.0</phrase></head>
<eg xml:space="preserve">(01) &lt;wsdl20:description&gt;
(02) …
(03)   &lt;Policy wsu:Id="common"&gt;
(04)     &lt;mtom:OptimizedMimeSerialization wsp:Optional="true"/&gt;
(05)     &lt;wsap:UsingAddressing /&gt;
(06)   &lt;/Policy&gt;

(07)   &lt;Policy wsu:Id="secure"&gt;
(08)     &lt;ExactlyOne&gt;
(09)       &lt;sp:TransportBinding&gt;…&lt;/sp:TransportBinding&gt;
(10)       &lt;sp:AsymmetricBinding&gt;…&lt;/sp:AsymmetricBinding &gt;
(11)     &lt;/ExactlyOne&gt;
(12)   &lt;/Policy&gt;

(13)   &lt;wsdl20:binding name="SecureBinding"
(14)       interface="tns:RealTimeDataInterface" &gt;
(15)     &lt;PolicyReference URI="#secure" /&gt;
(16)     &lt;wsdl20:operation name="GetRealQuote" &gt;…&lt;/wsdl20:operation&gt;
(17)     …
(18)   &lt;/wsdl20:binding&gt;

(19)   &lt;wsdl20:service name="RealTimeDataService"
(20)        interface="tns:RealTimeDataInterface" &gt;
(21)     &lt;wsdl20:endpoint name="RealTimeDataPort" 
(22)          binding="tns:SecureBinding"&gt;
(23)       &lt;PolicyReference URI="#common" /&gt;
(24)       …
(25)     &lt;/wsdl20:endpoint&gt;
(26)   &lt;/wsdl20:service&gt;
(27) …
(28) &lt;/wsdl20:description&gt;</eg>
</example>
<p><phrase diff="add">The </phrase><code><phrase diff="add">SecureBinding</phrase></code> <phrase diff="add">WSDL binding description describes a binding for
                    an interface that provides real-time quotes and book information on securities.
                    (The prefixes </phrase><code><phrase diff="add">wsdl20</phrase></code> <phrase diff="add">and </phrase><code><phrase diff="add">tns</phrase></code> <phrase diff="add">are used here to denote
                    the Web Services Description Language 2.0 XML Namespace and the target namespace
                    of this WSDL document respectively.) To require the use of security for these
                  offerings, a </phrase><termref def="policy_expression"><phrase diff="add">policy expression</phrase></termref> <phrase diff="add">that requires the use of either transport-level
                  or message-level security is attached to the binding description. The </phrase><termref def="policy_expression"><phrase diff="add">policy expression</phrase></termref>
                   <phrase diff="add">applies to any message exchange associated with any
                    </phrase><code><phrase diff="add">endpoint</phrase></code> <phrase diff="add">that supports this binding description.</phrase></p>
<p><phrase diff="add">The </phrase><code><phrase diff="add">RealTimeDataPort</phrase></code> <phrase diff="add">WSDL endpoint description describes an endpoint
                    that supports the </phrase><code><phrase diff="add">SecureBinding</phrase></code> <phrase diff="add">WSDL binding description. To
                    require the use of addressing and allow the use of optimization (Optimized MIME
                  Serialization as defined in the MTOM specification [</phrase><bibref ref="MTOM"></bibref><phrase diff="add">]), a </phrase><termref def="policy_expression"><phrase diff="add">policy expression</phrase></termref> <phrase diff="add">that
                    represents the addressing requirement and optimization capability is attached to
                  the endpoint description. The </phrase><termref def="policy_expression"><phrase diff="add">policy expression</phrase></termref> <phrase diff="add">applies to any message exchange
                    associated with the </phrase><code><phrase diff="add">RealTimeDataPort</phrase></code> <phrase diff="add">endpoint.</phrase></p>
<p><phrase diff="add">In the above example, the </phrase><code><phrase diff="add">#secure</phrase></code> <phrase diff="add">and </phrase><code><phrase diff="add">#common</phrase></code>
<termref def="policy_expression"><phrase diff="add">policy expressions</phrase></termref>
               <phrase diff="add">attached to the </phrase><code><phrase diff="add">SecureBinding</phrase></code> <phrase diff="add">WSDL binding and
                        </phrase><code><phrase diff="add">RealTimeDataPort</phrase></code> <phrase diff="add">WSDL endpoint descriptions collectively apply
                    to any message exchange associated with the RealTimeDataPort endpoint. The
                    example below represents the combination of these two </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref><phrase diff="add">, that is, the
                </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">for the </phrase><code><phrase diff="add">RealTimeDataPort</phrase></code> <phrase diff="add">endpoint.</phrase></p>
<example id="table-wsdl20-effective-policy-example">
<head><phrase diff="add">Effective Policy for the RealTimeDataPort endpoint</phrase></head>
<eg xml:space="preserve">(01) &lt;Policy&gt;
(02)  &lt;All&gt;
(03)     &lt;Policy&gt;
(04)       &lt;mtom:OptimizedMimeSerialization wsp:Optional="true"/&gt;
(05)       &lt;wsap:UsingAddressing /&gt;
(06)     &lt;/Policy&gt;
(07)     &lt;Policy&gt;
(08)       &lt;ExactlyOne&gt;
(09)         &lt;sp:TransportBinding&gt;…&lt;/sp:TransportBinding&gt;
(10)         &lt;sp:AsymmetricBinding&gt;…&lt;/sp:AsymmetricBinding &gt;
(11)       &lt;/ExactlyOne&gt;
(12)     &lt;/Policy&gt;
(13)   &lt;/All&gt;
(14) &lt;/Policy&gt;</eg>
</example>
</div2>
<div2 id="attaching-policy-expressions">
<head><phrase diff="add">Attaching Policy Expressions</phrase></head>
<p><phrase diff="add">Policy attachment points in a WSDL 2.0 document are:</phrase></p>
<ulist>
<item>
<p>
<code><phrase diff="add">wsdl20:service</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:endpoint</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:binding</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:binding/wsdl20:operation</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:binding/wsdl20:fault</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:binding/wsdl20:operation/wsdl20:input</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:binding/wsdl20:operation/wsdl20:output</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:binding/wsdl20:operation/wsdl20:infault</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:binding/wsdl20:operation/wsdl20:outfault</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:interface</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:interface/wsdl20:operation</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:interface/wsdl20:fault</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:input</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:output</phrase></code>
</p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:infault</phrase></code> <phrase diff="add">and</phrase></p>
</item>
<item>
<p>
<code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:outfault.</phrase></code>
</p>
</item>
</ulist>
<p><phrase diff="add">Any of these elements </phrase><rfc2119><phrase diff="add">MAY</phrase></rfc2119> <phrase diff="add">have one or more </phrase><code><phrase diff="add">Policy</phrase></code> <phrase diff="add">or
                        </phrase><code><phrase diff="add">PolicyReference</phrase></code> <phrase diff="add">child elements.</phrase></p>
<p><phrase diff="add">Policy attachment points in a WSDL document are associated with specific </phrase><termref def="policy_subject"><phrase diff="add">policy subjects</phrase></termref>
                  <phrase diff="add">as described in the table below. There are four </phrase><termref def="policy_subject"><phrase diff="add">policy subjects</phrase></termref> <phrase diff="add">in
                    WSDL: the service policy subject, the endpoint policy subject, the operation
                    policy subject and the message policy subject. When a </phrase><termref def="policy_expression"><phrase diff="add">policy expression</phrase></termref> <phrase diff="add">is
                  attached to a </phrase><termref def="policy_subject"><phrase diff="add">policy subject</phrase></termref> <phrase diff="add">in a WSDL document, capabilities and requirements
                  represented by the </phrase><termref def="policy_expression"><phrase diff="add">policy expression</phrase></termref> <phrase diff="add">apply to any message exchange or message
                  associated with (or described by) the </phrase><termref def="policy_subject"><phrase diff="add">policy subject</phrase></termref><phrase diff="add">.</phrase></p>
<table border="1" cellpadding="5" cellspacing="0" id="association-of-policy-attachment-points-with-policy-subjects">
<caption><phrase diff="add">Association of Policy Attachment Points with Policy Subjects</phrase></caption>
<thead>
<tr>
<th colspan="1" rowspan="1"><phrase diff="add">Policy Attachment Point in a WSDL document</phrase></th>
<th colspan="1" rowspan="1"><phrase diff="add">WSDL Component</phrase></th>
<th colspan="1" rowspan="1"><phrase diff="add">Policy Subject</phrase></th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:service</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Service</td>
<td colspan="1" diff="add" rowspan="1">Service</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:endpoint</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Endpoint</td>
<td colspan="1" diff="add" rowspan="3">Endpoint</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:binding</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Binding</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:interface</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Interface</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:binding/wsdl20:operation</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Binding Operation</td>
<td colspan="1" diff="add" rowspan="2">Operation</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:interface/wsdl20:operation</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Interface Operation</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:binding/wsdl20:operation/ wsdl20:input</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Binding Message Reference </td>
<td colspan="1" diff="add" rowspan="2">Message for an input message</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:input</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Interface Message Reference whose {direction} property is
                              ‘in’</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:binding/wsdl20:operation/ wsdl20:output</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Binding Message Reference </td>
<td colspan="1" diff="add" rowspan="2">Message for an output message</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:interface/wsdl20:operation/ wsdl20:output</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Interface Message Reference whose {direction} property is
                              ‘out’</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:binding/wsdl20:fault</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Binding Fault</td>
<td colspan="1" diff="add" rowspan="4">Message for an input fault message</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:binding/wsdl20:operation/ wsdl20:infault</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Binding Fault Reference</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:interface/wsdl20:fault</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Interface Fault</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:infault</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Interface Fault Reference whose {direction} property is
                              ‘in’</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:binding/wsdl20:fault</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Binding Fault</td>
<td colspan="1" diff="add" rowspan="4">Message for an output fault message</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:binding/wsdl20:operation/wsdl20:outfault</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Binding Fault Reference</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:interface/wsdl20:fault</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Interface Fault</td>
</tr>
<tr>
<td colspan="1" rowspan="1">
<code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:outfault</phrase></code>
</td>
<td colspan="1" diff="add" rowspan="1">Interface Fault Reference whose {direction} property is
                              ‘out’</td>
</tr>
</tbody>
</table>
<p><phrase diff="add">For a WSDL component, the attached </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">(extension to the WSDL component model
                is described in </phrase><specref ref="extension-to-wsdl-component-model"></specref><phrase diff="add">) is
                considered an intrinsic part of the WSDL component definition and applies to all
                uses of that definition. For example, when attached to a WSDL Interface
                component, capabilities and requirements represented by a </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">apply to all
                the use of this WSDL Interface description. When attached to a WSDL Binding
                component, capabilities and requirements represented by a </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">apply to all
                the Endpoints that support this binding description.</phrase></p>
<p><phrase diff="add">A </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">associated with a service policy subject applies to any message exchange
                (that is explicitly described by the Interface component in the Service
                component's {interface} property) using any of the endpoints offered by that
                service. </phrase></p>
<p>
<termref def="policy"><phrase diff="add">Policies</phrase></termref> <phrase diff="add">associated with an endpoint policy subject apply to any message exchange
                (that is explicitly described by the Interface component in the Service
                component’s {interface} property of the Endpoint component’s {parent} property)
                made using that endpoint. Given that a WSDL Interface component may be used by
                one or more binding descriptions, it is </phrase><rfc2119><phrase diff="add">RECOMMENDED</phrase></rfc2119> <phrase diff="add">that only a </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref>
                <phrase diff="add">containing </phrase><termref def="policy_assertion"><phrase diff="add">policy assertions</phrase></termref> <phrase diff="add">that apply to any possible binding description
                should be attached.</phrase></p>
<p>
<termref def="policy"><phrase diff="add">Policies</phrase></termref> <phrase diff="add">associated with an operation policy subject apply to the message
                exchange described by that operation. Given that a WSDL Interface Operation
                component may be used by one or more binding descriptions, it is </phrase><rfc2119><phrase diff="add">RECOMMENDED</phrase></rfc2119>
                <phrase diff="add">that only a </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">containing </phrase><termref def="policy_assertion"><phrase diff="add">policy assertions</phrase></termref> <phrase diff="add">that apply to any possible
                binding description should be attached.</phrase></p>
<p>
<termref def="policy"><phrase diff="add">Policies</phrase></termref> <phrase diff="add">associated with a message policy subject apply to that message (input,
                output or fault). Given that a WSDL Interface Message Reference, Interface
                Fault, Interface Fault Reference components may be used by one or more binding
                descriptions, it is </phrase><rfc2119><phrase diff="add">RECOMMENDED</phrase></rfc2119> <phrase diff="add">that only a </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">containing </phrase><termref def="policy_assertion"><phrase diff="add">policy assertions</phrase></termref>
                    <phrase diff="add">that apply to any possible binding should be attached.</phrase></p>
<p>
<termref def="policy"><phrase diff="add">Policies</phrase></termref>
<rfc2119><phrase diff="add">MAY</phrase></rfc2119> <phrase diff="add">be attached at different levels of the WSDL component hierarchy. A
                message exchange with an endpoint </phrase><rfc2119><phrase diff="add">MAY</phrase></rfc2119> <phrase diff="add">be described by the </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">in all four
                </phrase><termref def="policy_subject"><phrase diff="add">policy subjects</phrase></termref> <phrase diff="add">simultaneously.</phrase></p>
<p><phrase diff="add">The common mechanism of associating a </phrase><termref def="policy_expression"><phrase diff="add">policy expression</phrase></termref> <phrase diff="add">with a </phrase><termref def="policy_subject"><phrase diff="add">policy subject</phrase></termref> <phrase diff="add">is
                to attach a reference to the </phrase><termref def="policy_expression"><phrase diff="add">policy expression</phrase></termref> <phrase diff="add">to the </phrase><termref def="policy_subject"><phrase diff="add">policy subject</phrase></termref><phrase diff="add">. As
                described in the WS-Policy specification [</phrase><bibref ref="WS-Policy"></bibref><phrase diff="add">], a reference to a </phrase><termref def="policy_expression"><phrase diff="add">policy expression</phrase></termref> <phrase diff="add">is
                    represented using the </phrase><code><phrase diff="add">PolicyReference</phrase></code> <phrase diff="add">element. A policy attachment
                    to a WSDL element is represented by attaching a </phrase><code><phrase diff="add">PolicyReference</phrase></code>
                    <phrase diff="add">element as a child element of the WSDL element.</phrase></p>
<p>
<termref def="policy_expression"><phrase diff="add">Policy expressions</phrase></termref> <phrase diff="add">can be included within a WSDL document or may reside external
                to a WSDL document. If including </phrase><termref def="policy_expression"><phrase diff="add">policy expressions</phrase></termref> <phrase diff="add">with a WSDL document is the
                    chosen approach, it is </phrase><rfc2119><phrase diff="add">RECOMMENDED</phrase></rfc2119> <phrase diff="add">that the </phrase><code><phrase diff="add">Policy</phrase></code> <phrase diff="add">elements are
                    included as children of the </phrase><code><phrase diff="add">wsdl20:description</phrase></code> <phrase diff="add">element after the
                        </phrase><code><phrase diff="add">wsdl20:types</phrase></code> <phrase diff="add">element and referenced using the
                        </phrase><code><phrase diff="add">PolicyReference</phrase></code> <phrase diff="add">elements.</phrase></p>
<p><phrase diff="add">To mandate the processing of a </phrase><termref def="policy_expression"><phrase diff="add">policy expression</phrase></termref> <phrase diff="add">attached to a policy attachment
                    point in a WSDL document, the expression </phrase><rfc2119><phrase diff="add">MUST</phrase></rfc2119> <phrase diff="add">be marked as required using the
                        </phrase><code><phrase diff="add">@wsdl20:required</phrase></code> <phrase diff="add">flag.</phrase></p>
<p><phrase diff="add">If the </phrase><code><phrase diff="add">Policy</phrase></code> <phrase diff="add">elements are included as children of the
                        </phrase><code><phrase diff="add">wsdl20:description</phrase></code> <phrase diff="add">element, these Policy elements </phrase><rfc2119><phrase diff="add">MUST NOT</phrase></rfc2119> <phrase diff="add">be
                    marked as required using the </phrase><code><phrase diff="add">@wsdl20:required</phrase></code><phrase diff="add">. (Note: these
                  </phrase><termref def="policy_expression"><phrase diff="add">policy expressions</phrase></termref> <phrase diff="add">may be included as children of the </phrase><code><phrase diff="add">wsdl20:description</phrase></code>
                    <phrase diff="add">element and may not be attached to any policy attachment point in a WSDL
                    document.)</phrase></p>
</div2>
<div2 id="extension-to-wsdl-component-model">
<head><phrase diff="add">Extension to WSDL Component Model</phrase></head>
<p><phrase diff="add">This document adds an optional {policy} property to the following WSDL
                    components:</phrase></p>
<ulist>
<item>
<p><phrase diff="add">Service</phrase></p>
</item>
<item>
<p><phrase diff="add">Endpoint</phrase></p>
</item>
<item>
<p><phrase diff="add">Binding</phrase></p>
</item>
<item>
<p><phrase diff="add">Binding Operation</phrase></p>
</item>
<item>
<p><phrase diff="add">Binding Fault</phrase></p>
</item>
<item>
<p><phrase diff="add">Binding Message Reference</phrase></p>
</item>
<item>
<p><phrase diff="add">Binding Fault Reference</phrase></p>
</item>
<item>
<p><phrase diff="add">Interface</phrase></p>
</item>
<item>
<p><phrase diff="add">Interface Operation</phrase></p>
</item>
<item>
<p><phrase diff="add">Interface Fault</phrase></p>
</item>
<item>
<p><phrase diff="add">Interface Message Reference</phrase></p>
</item>
<item>
<p><phrase diff="add">Interface Fault Reference</phrase></p>
</item>
</ulist>
<p><phrase diff="add">The {policy} property, when present, represents the capabilities and requirements
                  as a </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref><phrase diff="add">. The value of the {policy} property is a </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">as defined by
                    Section 3 - Policy Model in the WS-Policy specification [</phrase><bibref ref="WS-Policy"></bibref><phrase diff="add">]. The following table
                    describes the mapping from XML representation to the {policy} property.</phrase></p>
<table border="1" cellpadding="5" cellspacing="0" id="mapping-from-xml-representation-to-policy-property">
<caption><phrase diff="add">Mapping from XML representation to the {policy} property</phrase></caption>
<thead>
<tr>
<th colspan="1" rowspan="1"><phrase diff="add">Component</phrase></th>
<th colspan="1" rowspan="1"><phrase diff="add">Value</phrase></th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" diff="add" rowspan="1">Service</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the <code><phrase diff="add">wsdl20:service</phrase></code>
                                    element.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Endpoint</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the <code><phrase diff="add">wsdl20:endpoint</phrase></code>
                                    element.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Binding</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the <code><phrase diff="add">wsdl20:binding</phrase></code>
                                    element.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Binding Operation</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the
                                        <code><phrase diff="add">wsdl20:binding/wsdl20:operation</phrase></code> element.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Binding Fault</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the
                                        <code><phrase diff="add">wsdl20:binding/wsdl20:fault</phrase></code> element.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Binding Message Reference</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the
                                        <code><phrase diff="add">wsdl20:binding/wsdl20:operation/wsdl20:input</phrase></code> or
                                        <code><phrase diff="add">wsdl20:binding/wsdl20:operation/wsdl20:output</phrase></code>
                                    element.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Binding Fault Reference</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the
                                        <code><phrase diff="add">wsdl20:binding/wsdl20:operation/wsdl20:infault</phrase></code>
                                    or <code><phrase diff="add">wsdl20:binding/wsdl20:operation/wsdl20:outfault</phrase></code>
                                    element.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Interface</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the <code><phrase diff="add">wsdl20:interface</phrase></code>
                                    element.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Interface Operation</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the
                                        <code><phrase diff="add">wsdl20:interface/wsdl20:operation</phrase></code> element, if
                                    any.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Interface Fault</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the
                                        <code><phrase diff="add">wsdl20:interface/wsdl20:fault</phrase></code> element.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Interface Message Reference</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                                        <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                                        <code><phrase diff="add">[children]</phrase></code> of the
                                  <code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:input</phrase></code>
                                  or <code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:output</phrase></code>
                                  element.</td>
</tr>
<tr>
<td colspan="1" diff="add" rowspan="1">Interface Fault Reference</td>
<td colspan="1" diff="add" rowspan="1">A <termref def="policy"><phrase diff="add">policy</phrase></termref> corresponding to the <termref def="merge"><phrase diff="add">merge</phrase></termref> of <code><phrase diff="add">Policy</phrase></code> or
                              <code><phrase diff="add">PolicyReference</phrase></code> elements, if any, in the
                              <code><phrase diff="add">[children]</phrase></code> of the
                              <code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:infault</phrase></code>
                              or
                              <code><phrase diff="add">wsdl20:interface/wsdl20:operation/wsdl20:outfault</phrase></code>
                              element.</td>
</tr>
</tbody>
</table>
</div2>
<div2 id="effective-policy">
<head><phrase diff="add">Effective Policy</phrase></head>
<p><phrase diff="add">The following diagram illustrates the four </phrase><termref def="policy_subject"><phrase diff="add">policy subjects</phrase></termref> <phrase diff="add">in WSDL and how the
              </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">is calculated for each of these </phrase><termref def="policy_subject"><phrase diff="add">policy subjects</phrase></termref><phrase diff="add">.</phrase></p>
<p>
<graphic alt="Policy Subjects and Effective Policy in WSDL 2.0" source="ws-policyattachment-4-wsdl20.jpg" xlink:actuate="onLoad" xlink:show="embed" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"></graphic>
</p>
<p><phrase diff="add">If multiple </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">are attached to WSDL components that collectively represent
              a </phrase><termref def="policy_subject"><phrase diff="add">policy subject</phrase></termref> <phrase diff="add">then the 
              </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of these </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">applies. (For
              example, there is a </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">attached to an Endpoint component that describes the
              component and there is a </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">attached to the Binding component in the
              Endpoint component’s {binding} property.) The </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">is the </phrase><termref def="merge"><phrase diff="add">merge</phrase></termref> <phrase diff="add">of
              the </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">that are attached to the same </phrase><termref def="policy_subject"><phrase diff="add">policy subject</phrase></termref><phrase diff="add">. The rest of this
              section describes how the </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">is calculated for each of these
              </phrase><termref def="policy_subject"><phrase diff="add">policy subjects</phrase></termref><phrase diff="add">.</phrase></p>
<div3 id="service-policy-subject">
<head><phrase diff="add">Service Policy Subject</phrase></head>
<p><phrase diff="add">The </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of a service policy subject is the </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">in the
                {policy} property of a Service component that describes the service.</phrase></p>
</div3>
<div3 id="endpoint-policy-subject">
<head><phrase diff="add">Endpoint Policy Subject</phrase></head>
<p><phrase diff="add">The </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of an endpoint policy subject is the </phrase><termref def="merge"><phrase diff="add">merge</phrase></termref> <phrase diff="add">of </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref>
                <phrase diff="add">in the {policy} properties of:</phrase></p>
<ulist>
<item>
<p><phrase diff="add">An Endpoint component that describes the endpoint,</phrase></p>
</item>
<item>
<p><phrase diff="add">The Binding component in the Endpoint component’s {binding} property, </phrase></p>
</item>
<item>
<p><phrase diff="add">The Interface component in the Service component’s {interface}
                  property of the Endpoint component’s {parent} property and</phrase></p>
</item>
<item>
<p><phrase diff="add">The Interface components in the {extended interfaces} property of the
                  Interface component in the Service component’s {interface} property of
                  the Endpoint component’s {parent} property.</phrase></p>
</item>
</ulist>
</div3>
<div3 id="operation-policy-subject">
<head><phrase diff="add">Operation Policy Subject</phrase></head>
<p><phrase diff="add">If the Binding component has an Interface component in the {interface}
                property, then the </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of an operation policy subject </phrase><rfc2119><phrase diff="add">MAY</phrase></rfc2119> <phrase diff="add">be
                calculated by </phrase><termref def="merge"><phrase diff="add">merging</phrase></termref> <phrase diff="add">the </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">in the {policy} properties of:</phrase></p>
<ulist>
<item>
<p><phrase diff="add">The Interface Operation component that describes the operation and</phrase></p>
</item>
<item>
<p><phrase diff="add">The Binding Operation component (if any) whose {interface operation}
                  property has the Interface Operation component.</phrase></p>
</item>
</ulist>
<p><phrase diff="add">If the Binding component does not have an Interface component in the
                {interface} property, then the </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of an operation policy
                subject </phrase><rfc2119><phrase diff="add">MUST</phrase></rfc2119> <phrase diff="add">be calculated in relation to a specific endpoint, and is the
                </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">in the {policy} property of the Interface Operation component that
                describes the operation. </phrase></p>
</div3>
<div3 id="message-policy-subject-input">
<head><phrase diff="add">Message Policy Subject (input message)</phrase></head>
<p><phrase diff="add">If the Binding component has an Interface component in the {interface}
                property, then the </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of an input message </phrase><rfc2119><phrase diff="add">MAY</phrase></rfc2119> <phrase diff="add">be calculated by
                </phrase><termref def="merge"><phrase diff="add">merging</phrase></termref> <phrase diff="add">the </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">in the {policy} properties of:</phrase></p>
<ulist>
<item>
<p><phrase diff="add">The Interface Message Reference component that describes the input
                  message and</phrase></p>
</item>
<item>
<p><phrase diff="add">The Binding Message Reference component whose {interface message
                  reference} property has the Interface Message Reference
                  component.</phrase></p>
</item>
</ulist>
<p><phrase diff="add">If the Binding component does not have an Interface component in the
                {interface} property, then the </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of an input message </phrase><rfc2119><phrase diff="add">MUST</phrase></rfc2119> <phrase diff="add">be
                calculated in relation to a specific endpoint, and is the </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">in the
                {policy} property of the Interface Message Reference component that
                describes the input message.</phrase></p>
</div3>
<div3 id="message-policy-subject-output">
<head><phrase diff="add">Message Policy Subject (output message)</phrase></head>
<p><phrase diff="add">If the Binding component has an Interface component in the {interface}
                property, then the </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of an output message </phrase><rfc2119><phrase diff="add">MAY</phrase></rfc2119> <phrase diff="add">be calculated
                by </phrase><termref def="merge"><phrase diff="add">merging</phrase></termref> <phrase diff="add">the </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">in the {policy} properties of:</phrase></p>
<ulist>
<item>
<p><phrase diff="add">The Interface Message Reference component that describes the output
                            message and</phrase></p>
</item>
<item>
<p><phrase diff="add">The Binding Message Reference component whose {interface message
                            reference} property has the Interface Message Reference
                        component.</phrase></p>
</item>
</ulist>
<p><phrase diff="add">If the Binding component does not have an Interface component in the
                        {interface} property, then the effective policy of an output message </phrase><rfc2119><phrase diff="add">MUST</phrase></rfc2119> <phrase diff="add">be
                      calculated in relation to a specific endpoint, and is the </phrase><termref def="policy"><phrase diff="add">policy</phrase></termref> <phrase diff="add">in the
                        {policy} property of the Interface Message Reference component that
                        describes the output message.</phrase></p>
</div3>
<div3 id="message-policy-subject-input-fault">
<head><phrase diff="add">Message Policy Subject (input fault message)</phrase></head>
<p><phrase diff="add">If the Binding component has an Interface component in the {interface}
                      property, then the </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of an input fault message </phrase><rfc2119><phrase diff="add">MAY</phrase></rfc2119> <phrase diff="add">be
                      calculated by </phrase><termref def="merge"><phrase diff="add">merging</phrase></termref> <phrase diff="add">the </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">in the {policy} properties of:</phrase></p>
<ulist>
<item>
<p><phrase diff="add">The Interface Fault Reference component that describes the input fault
                            message, </phrase></p>
</item>
<item>
<p><phrase diff="add">The Interface Fault component in the Interface Fault Reference
                            component’s {interface fault} property, </phrase></p>
</item>
<item>
<p><phrase diff="add">The Binding Fault Reference component whose {interface fault
                            reference} property has the Interface Fault Reference component and</phrase></p>
</item>
<item>
<p><phrase diff="add">The Binding Fault component whose {interface fault} property has the
                            Interface Fault component in the Interface Fault Reference component’s
                            {interface fault} property.</phrase></p>
</item>
</ulist>
<p><phrase diff="add">If the Binding component does not have an Interface component in the
                      {interface} property, then the </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of an input fault message
                      </phrase><rfc2119><phrase diff="add">MUST</phrase></rfc2119> <phrase diff="add">be calculated in relation to a specific endpoint, and is the </phrase><termref def="merge"><phrase diff="add">merge</phrase></termref> <phrase diff="add">of
                      </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">in the {policy} properties of:</phrase></p>
<ulist>
<item>
<p><phrase diff="add">The Interface Fault Reference component that describes the input fault
                            message and</phrase></p>
</item>
<item>
<p><phrase diff="add">The Interface Fault component in the Interface Fault Reference
                            component’s {interface fault} property.</phrase></p>
</item>
</ulist>
</div3>
<div3 id="message-policy-subject-output-fault">
<head><phrase diff="add">Message Policy Subject (output fault message)</phrase></head>
<p><phrase diff="add">If the Binding component has an Interface component in the {interface}
                      property, then the </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of an output fault message </phrase><rfc2119><phrase diff="add">MAY</phrase></rfc2119> <phrase diff="add">be
                      calculated by </phrase><termref def="merge"><phrase diff="add">merging</phrase></termref> <phrase diff="add">the </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">in the {policy} properties of:</phrase></p>
<ulist>
<item>
<p><phrase diff="add">The Interface Fault Reference component that describes the output
                            fault message,</phrase></p>
</item>
<item>
<p><phrase diff="add">The Interface Fault component in the Interface Fault Reference
                            component’s {interface fault} property, </phrase></p>
</item>
<item>
<p><phrase diff="add">The Binding Fault Reference component whose {interface fault
                            reference} property has the Interface Fault Reference component and</phrase></p>
</item>
<item>
<p><phrase diff="add">The Binding Fault component whose {interface fault} property has the
                            Interface Fault component in the Interface Fault Reference component’s
                            {interface fault} property for the endpoint.</phrase></p>
</item>
</ulist>
<p><phrase diff="add">If the Binding component does not have an Interface component in the
                      {interface} property, then the </phrase><termref def="effective_policy"><phrase diff="add">effective policy</phrase></termref> <phrase diff="add">of an output fault message
                      </phrase><rfc2119><phrase diff="add">MUST</phrase></rfc2119> <phrase diff="add">be calculated in relation to a specific endpoint, and is the </phrase><termref def="merge"><phrase diff="add">merge</phrase></termref> <phrase diff="add">of
                      </phrase><termref def="policy"><phrase diff="add">policies</phrase></termref> <phrase diff="add">in the {policy} properties of:</phrase></p>
<ulist>
<item>
<p><phrase diff="add">The Interface Fault Reference component that describes the output
                            fault message and</phrase></p>
</item>
<item>
<p><phrase diff="add">The Interface Fault component in the Interface Fault Reference
                            component’s {interface fault} property.</phrase></p>
</item>
</ulist>
</div3>
</div2>
</div1>
<div1 id="AttachingPoliciesUsingUDDI">
<head>Attaching Policies Using UDDI</head>
<p>This section defines a mechanism for associating policies with
<termref def="policy_subject">policy subjects</termref> through the use of UDDI. It defines a minimum level of
support for associating <termref def="policy_expression">policy expressions</termref> with entities in a UDDI
registry. The calculation of <termref def="effective_policy">effective policy</termref> for UDDI entities is
described in Section <specref ref="CalculatingEffectivePolicyElementPolicyUDDI"></specref>. While the general
concept for associating <termref def="policy_expression">policy expressions</termref> with UDDI entities, which
is specified in Sections <specref ref="ReferencingRemotePolicyExpressions"></specref> and <specref ref="RegisteringReusablePolicyExpressions"></specref>, is based on UDDI Version 2 [<bibref ref="UDDIAPI20"></bibref>, <bibref ref="UDDIDataStructure20"></bibref>], the necessary
changes with respect to UDDI Version 3 [<bibref ref="UDDI30"></bibref>] are
explained in Section <specref ref="RegisteringPoliciesUDDIVersion3"></specref>.</p>
<p>There are essentially two approaches for registering policies in
UDDI. One approach is to directly reference remotely accessible <termref def="policy_expression">policy
expressions</termref> in UDDI entities, the other is to register <termref def="policy_expression">policy
expressions</termref> as distinct tModels and then reference these tModels in
each UDDI entity that is using the <termref def="policy_expression">policy expression</termref>. While the former
approach (see Section <specref ref="ReferencingRemotePolicyExpressions"></specref>) is expected to be used for
<termref def="policy_expression">policy expressions</termref> that are mainly unique for a given Web service, the
latter approach (see Section <specref ref="RegisteringReusablePolicyExpressions"></specref>) is expected to be used
for more modular and reusable <termref def="policy_expression">policy expressions</termref>.</p>
<div2 id="CalculatingEffectivePolicyElementPolicyUDDI">
<head>Calculating Effective Policy and Element Policy in UDDI</head>
<p>When attaching a <termref def="policy">policy</termref> to a UDDI entity a <termref def="policy_scope">policy scope</termref> is implied
for that attachment. The <termref def="policy_scope">policy scope</termref> only contains the <termref def="policy_subject">policy
subjects</termref> associated with that entity, and not those associated with
the children of that entity. This <termref def="policy">policy</termref> is the entity's <termref def="element_policy">element
policy</termref>.</p>
<p>Each <termref def="policy_assertion">policy assertion</termref> contained within a UDDI entity's <termref def="element_policy">element
policy</termref> should have the correct semantic such that the <phrase diff="add">policy </phrase>subject for that
assertion is that UDDI entity. For example, assertions that describe
behaviours regarding a service provider should only be contained
within policies attached to a businessEntity structure.</p>
<p>For UDDI tModels that represent Web service types, the <termref def="element_policy">element
policy</termref> is considered an intrinsic part of the tModel and applies to
all uses of that tModel. In particular, it <rfc2119>MUST</rfc2119> be
<termref def="merge">merged</termref> into the <termref def="effective_policy">effective policy</termref> of every bindingTemplate
that references that tModel.</p>
<p>Policies that apply to deployed Web services (bindingTemplates) are
only considered in the <termref def="effective_policy">effective policy</termref> of that deployed resource
itself.</p>
<p>Each of these entities <rfc2119>MAY</rfc2119> have an <termref def="element_policy">element
policy</termref> per Section <specref ref="rPolicyAttachment"></specref>. The remainder of
this section defines how that <termref def="element_policy">element policy</termref> is interpreted to
calculate the <termref def="effective_policy">effective policy</termref>.</p>
<div3 id="ServiceProviderPolicySubjectUDDI">
<head>Service Provider Policy Subject</head>
<p>The following UDDI element is considered as the service provider policy subject:</p>
<ulist>
<item>
<p>
<el>uddi:businessEntity</el>
</p>
</item>
</ulist>
<p>This element <rfc2119>MAY</rfc2119> have <termref def="element_policy">element policy</termref> as per
Section <specref ref="rPolicyAttachment"></specref>, and if present
<rfc2119>MUST</rfc2119> be <termref def="merge">merged</termref> into the <termref def="effective_policy">effective policy</termref> of the
UDDI businessEntity Subject.</p>
<p>Policy attached to the service provider policy subject applies to
behaviors or aspects of the service provider as a whole, irrespective
of interactions over any particular service. This includes — but
is not limited to — acting as a service consumer or a service
provider in general. </p>
</div3>
<div3 id="ServicePolicySubjectUDDI">
<head>Service Policy Subject</head>
<p>The following UDDI element is considered as the service policy subject:</p>
<ulist>
<item>
<p>
<el>uddi:businessService</el>
</p>
</item>
</ulist>
<p>This element <rfc2119>MAY</rfc2119> have <termref def="element_policy">element policy</termref> as per Section <specref ref="rPolicyAttachment"></specref>, and if present <rfc2119>MUST</rfc2119> be
<termref def="merge">merged</termref> into the <termref def="effective_policy">effective
policy</termref> of the UDDI businessService Subject.</p>
<p>Policy attached to the service policy subject applies to behaviors
or aspects of the service as a whole, irrespective of interactions
over any particular endpoint. This includes — but is not limited
to — acting as a consumer or a provider of the service.</p>
</div3>
<div3 id="EndpointPolicySubjectUDDI">
<head>Endpoint Policy Subject</head>
<p>The following UDDI elements collectively describe an endpoint:</p>
<ulist>
<item>
<p>
<el>uddi:bindingTemplate</el>
</p>
</item>
<item>
<p>
<el>uddi:tModel</el>
</p>
</item>
</ulist>
<p>These elements <rfc2119>MAY</rfc2119> have <termref def="element_policy">element policy</termref> as per
Section <specref ref="rPolicyAttachment"></specref>. The <termref def="policy_scope">policy scope</termref> implied by
each of these elements contains the endpoint policy subject
representing the deployed endpoint.</p>
<p>An endpoint policy subject applies to behaviours associated with an
entire endpoint of the service, irrespective of any message exchange
made. This includes — but is not limited to — aspects of
communicating with or instantiating the endpoint.</p>
<p>The <termref def="effective_policy">effective policy</termref> for a UDDI endpoint includes the <termref def="element_policy">element
policy</termref> of the <el>uddi:bindingTemplate</el> element that defines the
endpoint <termref def="merge">merged</termref> with the <termref def="element_policy">element policy</termref> of those
<el>uddi:tModel</el> elements that are referenced in contained
<el>uddi:tModelInstanceInfo</el> elements.</p>
</div3>
</div2>
<div2 id="ReferencingRemotePolicyExpressions">
<head>Referencing Remote Policy Expressions</head>
<p>UDDI tModels provide a generic mechanism for associating arbitrary
metadata with services and other entities in a UDDI registry. To
properly integrate Web Services Policy into the UDDI model, Web Services Policy 1.5 - Attachment
pre-defines one tModel that is used to associate a remotely accessible
<termref def="policy">policy</termref> with an entity in a UDDI registry.</p>
<p>This new tModel is called the remote policy reference category
system and is defined in Appendix <specref ref="RemotePolicyReferenceCategorySystem"></specref>.</p>
<p>UDDI registries <rfc2119>MUST</rfc2119> use the <phrase diff="add">(UDDI V2 [</phrase><bibref diff="add" ref="UDDIDataStructure20"></bibref><phrase diff="add">]) </phrase><att>tModelKey</att>
<code>uuid:a27078e4-fd38-320a-806f-6749e84f8005</code> to uniquely identify this
tModel so that UDDI registry users can expect the same behavior across
different UDDI registries.</p>
<p>The tModel's valid values are those IRIs that identify external
<termref def="policy_expression">policy expressions</termref>; that is, when referencing this category system in
a <el>categoryBag</el>, the corresponding <att>keyValue</att> of the <el>keyedReference</el> is the
IRI of the <termref def="policy_expression">policy expression</termref>.</p>
<p>Using the remote policy reference category system, one can then
associate a <termref def="policy_expression">policy expression</termref> with a <el>businessEntity</el>, a
<el>businessService</el>, and a tModel using the entity's <el>categoryBag</el>. For
example, associating the <termref def="policy_expression">policy expression</termref> that is identified by the
IRI <code>http://www.example.com/myservice/policy</code> with a <el>businessService</el> is
done as follows: </p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;businessService serviceKey="…" &gt;
  &lt;name&gt;…&lt;/name&gt;
  &lt;description&gt;…&lt;/description&gt;
  &lt;bindingTemplates&gt;…&lt;/bindingTemplates&gt;
  &lt;categoryBag&gt;
    &lt;keyedReference
       keyName="Policy Expression for example's Web services"
       keyValue="http://www.example.com/myservice/policy"
       tModelKey="uuid:a27078e4-fd38-320a-806f-6749e84f8005" /&gt;
  &lt;/categoryBag&gt;
&lt;/businessService&gt;</eg>
<p>The <att>tModelKey</att> of the <el>keyedReference</el>
<rfc2119>MUST</rfc2119> match
the fixed <att>tModelKey</att> from the remote policy reference category
system. The <att>keyValue</att>
<rfc2119>MUST</rfc2119> be the IRI that
identifies the <termref def="policy_expression">policy expression</termref>.</p>
<p>A different approach has to be taken to associate a <termref def="policy_expression">policy
expression</termref> with a <el>bindingTemplate</el>, since bindingTemplates do not
contain a <el>categoryBag</el> in UDDI Version 2. Therefore, the
<el>bindingTemplate</el>'s <el>tModelInstanceInfo</el> and <el>instanceParms</el>
<rfc2119>MUST</rfc2119> be used as follows: </p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;bindingTemplate bindingKey="…" &gt;
  &lt;accessPoint&gt;…&lt;/accessPoint&gt;
  &lt;tModelInstanceDetails&gt;
    &lt;tModelInstanceInfo
       tModelKey="uuid:a27078e4-fd38-320a-806f-6749e84f8005" &gt;
      &lt;instanceDetails&gt;
        &lt;instanceParms&gt;
          http://www.example.com/myservice/policy
        &lt;/instanceParms&gt;
      &lt;/instanceDetails&gt;
    &lt;/tModelInstanceInfo&gt;
  &lt;/tModelInstanceDetails&gt;
&lt;/bindingTemplate&gt;</eg>
<p>The <att>tModelKey</att> of the <el>tModelInstanceInfo</el>
<rfc2119>MUST</rfc2119>
match the fixed <att>tModelKey</att> from the remote policy reference category
system as defined above. The <el>instanceParms</el>
<rfc2119>MUST</rfc2119> be
the IRI that identifies the <termref def="policy_expression">policy expression</termref>.</p>
</div2>
<div2 id="RegisteringReusablePolicyExpressions">
<head>Registering Reusable Policy Expressions</head>
<p>In addition to using the approach outlined in the section above,
publishers may register a specific <termref def="policy_expression">policy expression</termref> in a UDDI
registry as a distinct tModel. To properly categorize tModels as
<termref def="policy_expression">policy expressions</termref>, Web Services Policy 1.5 - Attachment pre-defines the Web Services Policy
Types category system as a tModel. This tModel is defined in Appendix
<specref ref="WS-PolicyTypesCategorySystem"></specref>.</p>
<p>The following illustrates a tModel for the <termref def="policy_expression">policy expression</termref>
identified by the IRI
<code>http://www.example.com/myservice/policy</code>.</p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;tModel tModelKey="uuid:04cfa…"&gt;
  &lt;name&gt;…&lt;/name&gt;
  &lt;description xml:lang="EN"&gt;
    Policy Expression for example's Web services
  &lt;/description&gt;
  &lt;overviewDoc&gt;
    &lt;description xml:lang="EN"&gt;Web Services Policy Expression&lt;/description&gt;
    &lt;overviewURL&gt;http://www.example.com/myservice/policy&lt;/overviewURL&gt;
  &lt;/overviewDoc&gt;
  &lt;categoryBag&gt;
    &lt;keyedReference
       keyName="Reusable policy Expression"
       keyValue="policy"
       tModelKey="uuid:fa1d77dc-edf0-3a84-a99a-5972e434e993" /&gt;
    &lt;keyedReference
       keyName="Policy Expression for example's Web services"
       keyValue="http://www.example.com/myservice/policy"
       tModelKey="uuid:a27078e4-fd38-320a-806f-6749e84f8005" /&gt;
  &lt;/categoryBag&gt;
&lt;/tModel&gt;</eg>
<p>The first <el>keyedReference</el> specifies that the tModel represents a
<termref def="policy_expression">policy expression</termref> — rather than only being associated with one
— by using the Web Services Policy Types category system's built-in
category <code>"policy"</code>, which is its single valid value. This is necessary
in order to enable UDDI inquiries for <termref def="policy_expression">policy expressions</termref> in
general. The second <el>keyedReference</el> designates the <termref def="policy_expression">policy expression</termref>
the tModel represents by using the approach from the section
above. This is necessary in order to enable UDDI inquiries for
particular <termref def="policy_expression">policy expressions</termref> based on their IRI.</p>
<p>Note that the <termref def="policy_expression">policy expression</termref> IRI is also specified in the
tModel's overview URL to indicate that it is a resolvable URL to
actually retrieve the <termref def="policy_expression">policy expression</termref>.</p>
<p>Web Services Policy 1.5 - Attachment pre-defines another tModel that is used to
associate such a pre-registered, locally available <termref def="policy_expression">policy expressions</termref>
with an entity in a UDDI registry</p>
<p>This new tModel is called the local policy reference category
system and is defined in Appendix <specref ref="LocalPolicyReferenceCategorySystem"></specref>.</p>
<p>UDDI registries <rfc2119>MUST</rfc2119> use the <att>tModelKey</att>
<code>uuid:a27f7d45-ec90-31f7-a655-efe91433527c</code> to uniquely identify this
tModel so that UDDI registry users can expect the same behavior across
different UDDI registries.</p>
<p>The local policy reference category system is based on
tModelKeys. The valid values of this category system are those
tModelKeys identifying tModels that</p>
<ulist>
<item>
<p>exist in the same UDDI registry</p>
</item>
<item>
<p>and are categorized as <code>"policy"</code> using the Web Services Policy Types category system.</p>
</item>
</ulist>
<p>That is, when referencing this category system in a category bag,
the corresponding <att>keyValue</att> of the <el>keyedReference</el> is the <att>tModelKey</att> of
the tModel that represents the <termref def="policy_expression">policy expression</termref>.</p>
<p>Given the local policy reference category system, one can then
associate a <termref def="policy_expression">policy expression</termref> tModel with a <el>businessEntity</el>, a
<el>businessService</el>, and a tModel using the entity's <el>categoryBag</el>. For
example, associating the <termref def="policy_expression">policy expression</termref> tModel with the <att>tModelKey</att>
<code>"uuid:04cfa…"</code> from above with a <el>businessService</el> is done as
follows: </p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;businessService serviceKey="…" &gt;
  &lt;name&gt;…&lt;/name&gt;
  &lt;description&gt;…&lt;/description&gt;
  &lt;bindingTemplates&gt;…&lt;/bindingTemplates&gt;
  &lt;categoryBag&gt;
    &lt;keyedReference
       keyName="Policy Expression for example's Web services"
       keyValue="uuid:04cfa…"
       tModelKey="uuid:a27f7d45-ec90-31f7-a655-efe91433527c" /&gt;
  &lt;/categoryBag&gt;
&lt;/businessService&gt;</eg>
<p>The <att>tModelKey</att> of the <el>keyedReference</el>
<rfc2119>MUST</rfc2119> match
the fixed <att>tModelKey</att> from the local policy reference category
system. The keyValue <rfc2119>MUST</rfc2119> be the <att>tModelKey</att> of the
<termref def="policy_expression">policy expression</termref> that is registered with the UDDI registry.</p>
<p>A different approach has to be taken to associate a <termref def="policy_expression">policy
expression</termref> with a <el>bindingTemplate</el>, since bindingTemplates do not
contain a <el>categoryBag</el> in UDDI Version 2. Therefore, the
<el>bindingTemplate</el>'s <el>tModelInstanceInfo</el> and <el>instanceParms</el>
<rfc2119>MUST</rfc2119> be used as follows: </p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;bindingTemplate bindingKey="…" &gt;
  &lt;accessPoint&gt;…&lt;/accessPoint&gt;
  &lt;tModelInstanceDetails&gt;
    &lt;tModelInstanceInfo
       tModelKey="uuid:a27f7d45-ec90-31f7-a655-efe91433527c" &gt;
      &lt;instanceDetails&gt;
        &lt;instanceParms&gt;uuid:04cfa…&lt;/instanceParms&gt;
      &lt;/instanceDetails&gt;
    &lt;/tModelInstanceInfo&gt;
  &lt;/tModelInstanceDetails&gt;
&lt;/bindingTemplate&gt;</eg>
<p>The tModelKey of the <el>tModelInstanceInfo</el>
<rfc2119>MUST</rfc2119> match the fixed <att>tModelKey</att> from the
local policy reference category system. The <el>instanceParms</el>
<rfc2119>MUST</rfc2119> be the <att>tModelKey</att> of the <termref def="policy_expression">policy
expression</termref> that is registered with the UDDI registry.</p>
</div2>
<div2 id="RegisteringPoliciesUDDIVersion3">
<head>Registering Policies in UDDI Version 3</head>
<p>UDDI Version 3 [<bibref ref="UDDI30"></bibref>] provides a number of
enhancements in the areas of modeling and entity keying. Special
considerations for UDDI multi-version support are outlined in chapter
10 of [<bibref ref="UDDI30"></bibref>]. The changes with respect to the
previous sections are as follows.</p>
<p>First, the tModelKeys of the pre-defined tModels are migrated to
domain-based keys. The migration is unique since the Version 2 keys
introduced in this specification are already programmatically derived
from the Version 3 keys given below.</p>
<p>The <att>tModelKey</att> for the remote policy reference tModel changes
from
<code>"uuid:a27078e4-fd38-320a-806f-6749e84f8005"</code> to
<code>"uddi:schemas.xmlsoap.org:remotepolicyreference:2003_03"</code>.</p>
<p>The <att>tModelKey</att> for the Web Services Policy Types tModel changes from <code>"uuid:fa1d77dc-edf0-3a84-a99a-5972e434e993"</code> to <code>"uddi:schemas.xmlsoap.org:policytypes:2003_03"</code>.</p>
<p>The <att>tModelKey</att> for the local policy reference tModel changes from <code>"uuid:a27f7d45-ec90-31f7-a655-efe91433527c"</code> to <code>"uddi:schemas.xmlsoap.org:localpolicyreference:2003_03"</code>.</p>
<p>Second, rather than putting <termref def="policy_expression">policy expression</termref> references in a
<el>bindingTemplate</el>'s <el>tModelInstanceInfo</el>, they are added to the
<el>bindingTemplate</el>'s <el>categoryBag</el>, analogous to the mechanism described
for other UDDI entities. For example, the example <el>bindingTemplate</el> from
section <specref ref="CalculatingEffectivePolicyElementPolicyUDDI"></specref> would be
changed as follows: </p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;bindingTemplate bindingKey="…" &gt;
  &lt;accessPoint&gt;…&lt;/accessPoint&gt;
  &lt;tModelInstanceDetails&gt;…&lt;/tModelInstanceDetails&gt;
  &lt;categoryBag&gt;
    &lt;keyedReference
       keyName="Policy Expression for example's Web services"
       keyValue="http://www.example.com/myservice/policy"
       tModelKey="uddi:schemas.xmlsoap.org:remotepolicyreference:2003_03"
    /&gt;
  &lt;/categoryBag&gt;
&lt;/bindingTemplate&gt;</eg>
<p>Third, inquiries for reusable <termref def="policy_expression">policy expression</termref> tModels
  <phrase diff="add">described in Section </phrase><specref diff="add" ref="RegisteringReusablePolicyExpressions"></specref> and UDDI
<phrase diff="add">tModel </phrase>entities that are associated with remote <termref def="policy_expression">policy expression</termref> is enhanced
by the wildcard mechanism for keyValues in keyedReferences. For
example, searching for all <termref def="policy_expression">policy expression</termref> tModels whose IRI starts
with <code>http://www.example.com/</code>, the following <code>find_tModel</code> API call can
be used: </p>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;find_tModel 
        xmlns="urn:uddi-org:api_v3" &gt;
  &lt;categoryBag&gt;
    &lt;keyedReference
       keyValue="http://www.example.com/"
       tModelKey="uddi:schemas.xmlsoap.org:remotepolicyreference:2003_03"
    /&gt;
  &lt;/categoryBag&gt;
  &lt;findQualifiers&gt;
    &lt;findQualifier&gt;approximateMatch&lt;/findQualifier&gt;
  &lt;/findQualifiers&gt;
&lt;/find_tModel&gt;</eg>
<p>Fourth, all UDDI entities may be digitally signed using XML digital
signatures [<bibref ref="XML-Signature"></bibref>]. Publishers who want to
digitally sign their <termref def="policy_expression">policy expression</termref> tModels or <termref def="policy_expression">policy expression</termref>
references in UDDI <rfc2119>MUST</rfc2119> use the Schema-centric
canonicalization algorithm [<bibref ref="SCC14N"></bibref>].</p>
</div2>
</div1>
<div1 id="SecurityConsiderations">
<head>Security Considerations</head>
<p>It is <rfc2119>RECOMMENDED</rfc2119> that <termref def="policy_attachment">policy attachments</termref> be
signed to prevent tampering. This also provides a mechanism for
authenticating <termref def="policy_attachment">policy attachments</termref> by determining if the signer has the
right to "speak for" the scope of the <termref def="policy_attachment">policy attachment</termref>.</p>
<p>Policies <rfc2119>SHOULD NOT</rfc2119> be accepted unless they are
signed and have an associated security token to specify the signer has
the right to "speak for" the scope containing the <termref def="policy">policy</termref>.</p>
</div1>
<div1 id="Conformance">
<head diff="add"><phrase diff="add">Conformance</phrase></head>
<div2 diff="add">
<head><phrase diff="add">External Policy Attachment Conformance</phrase></head>
<p><phrase diff="add">An element information item whose namespace name is "http://www.w3.org/@@@@/@@/policy" and whose local part is PolicyAttachment conforms to this specification if it is valid according to the XML Schema [</phrase><bibref ref="XMLSchemaPart1"></bibref><phrase diff="add">] for that element as defined by this specification (</phrase><loc href="http://www.w3.org/@@@@/@@/policy/ws-policy.xsd" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">http://www.w3.org/@@@@/@@/policy/ws-policy.xsd</phrase></loc><phrase diff="add">) and additionally adheres to all the constraints contained in Section </phrase><specref ref="ExternalPolicyAttachment"></specref> <phrase diff="add">of this specification. Such a conformant element information item constitutes an external policy attachment. </phrase></p>
</div2>
<div2 diff="add">
<head><phrase diff="add">WSDL 1.1 Attachment Conformance</phrase></head>
<p>
 <phrase diff="add">A WSDL 1.1 [</phrase><bibref ref="WSDL11"></bibref><phrase diff="add">] description conforms to this specification when it incorporates one or more element policies and additionally adheres to all the constraints contained in section </phrase><specref ref="AttachingPolicyUsingWSDL1.1"></specref>
</p>
</div2>
<div2 diff="add">

  <head><phrase diff="add">WSDL 2.0 Attachment </phrase>Conformance</head>
<p>
 <phrase diff="add">A WSDL 2.0 [</phrase><bibref ref="WSDL20"></bibref><phrase diff="add">] description conforms to this specification when it incorporates one or more element policies and additionally adheres to all the constraints contained in section </phrase><specref ref="ws-policy-attachment-for-wsdl20"></specref>
</p>
</div2>
</div1>
</body>
<back>
<div1 id="References">
<head>References</head>
<div2 id="Normative-References">
<head>Normative References</head>
<blist>
<bibl href="http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html" id="BP11" key="BP 1.1" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Basic Profile Version 1.1</titleref>, K. Ballinger,
	et al, Editors. The Web Services-Interoperability
	Organization, 24 August 2004. This version of the Basic
	Profile Version 1.1 is
	http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html. The
	<loc href="http://www.ws-i.org/Profiles/BasicProfile-1.1.html" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest
	version of the Basic Profile Version 1.1</loc> is available at
	http://www.ws-i.org/Profiles/BasicProfile-1.1.html
      </bibl>
<bibl href="http://www.ietf.org/rfc/rfc2119.txt" id="RFC2119" key="IETF RFC 2119" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Key words for use in RFCs to Indicate Requirement
	Levels</titleref>, S. Bradner, Author. Internet Engineering
	Task Force, June 1999. Available at
	http://www.ietf.org/rfc/rfc2119.txt.
      </bibl>
<bibl href="http://www.ietf.org/rfc/rfc3987.txt" id="RFC3987" key="IETF RFC 3987" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Internationalized Resource Identifiers (IRIs)
        </titleref>, M. Duerst and M. Suignard, 
        Authors. Internet Engineering Task Force,
        January 2005. Available at
        http://www.ietf.org/rfc/rfc3987.txt.
      </bibl>

<bibl href="http://uddi.org/pubs/ProgrammersAPI-V2.04-Published-20020719.htm" id="UDDIAPI20" key="UDDI API 2.0" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">UDDI Version 2.04 API</titleref>, T. Bellwood,
	Editor.  Organization for the Advancement of Structured
	Information Standards, 19 July 2002. This version of UDDI
	Version 2.0 API is
	http://uddi.org/pubs/ProgrammersAPI-V2.04-Published-20020719.htm. The
	<loc href="http://uddi.org/pubs/ProgrammersAPI_v2.htm" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest
	version of the UDDI 2.0 API</loc> is available at
	http://uddi.org/pubs/ProgrammersAPI_v2.htm.
      </bibl>
<bibl href="http://uddi.org/pubs/DataStructure-V2.03-Published-20020719.htm" id="UDDIDataStructure20" key="UDDI Data Structure 2.0" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">UDDI Version 2.03 Data Structure
	Reference</titleref>, C. von Riegen, Editor. Organization for
	the Advancement of Structured Information Standards, 19 July
	2002. This version of UDDI Version 2.0 Data Structures is
	http://uddi.org/pubs/DataStructure-V2.03-Published-20020719.htm. The
	<loc href="http://uddi.org/pubs/DataStructure_v2.htm" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest
	version of the UDDI 2.0 Data Structures</loc> is available at
	http://uddi.org/pubs/DataStructure_v2.htm.
      </bibl>
<bibl href="http://uddi.org/pubs/uddi-v3.0.1-20031014.htm" id="UDDI30" key="UDDI 3.0" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">UDDI Version 3.0.1</titleref>, L. Clément, et
	al, Editors. Organization for the Advancement of Structured Information Standards, 14 October 2003. This version of the UDDI
	Version 3.0 is
	http://uddi.org/pubs/uddi-v3.0.1-20031014.htm. The <loc href="http://uddi.org/pubs/uddi_v3.htm" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest version of the
	UDDI 3.0</loc> specification is available at
	http://uddi.org/pubs/uddi_v3.htm.
      </bibl>
<bibl diff="chg" href="ws-policy-framework.html" id="WS-Policy" key="Web Services Policy Framework" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Web Services Policy 1.5 - Framework</titleref>, A. S. Vedamuthu, D. Orchard, M. Hondo, T. Boubez and P. Yendluri,
	Editors. World Wide Web Consortium, <phrase diff="chg">@@, @@@@
	@@@@.  </phrase>This version of the specification of the
	Web Services Policy 1.5 - Framework specification is
	<phrase diff="chg">ws-policy-framework.html. </phrase>The <loc href="http://www.w3.org/TR/ws-policy-framework" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest version
	of Web Services Policy 1.5 - Framework</loc> is available at
	<phrase diff="chg">http://www.w3.org/TR/ws-policy-framework.
      </phrase></bibl>
<bibl href="http://www.w3.org/TR/2006/REC-ws-addr-core-20060509/" id="WS-Addressing" key="WS-Addressing Core" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Web Services Addressing 1.0 - Core</titleref>,
	M. Gudgin, M. Hadley, and T. Rogers, Editors. World Wide Web
	Consortium, 9 May 2006. This version of the Web Services
	Addressing 1.0 - Core Recommendation is
	http://www.w3.org/TR/2006/REC-ws-addr-core-20060509/. The <loc href="http://www.w3.org/TR/ws-addr-core/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest version of Web
	Services Addressing 1.0 - Core</loc> is available at
	http://www.w3.org/TR/ws-addr-core.
      </bibl>
<bibl href="http://www.w3.org/TR/2001/NOTE-wsdl-20010315" id="WSDL11" key="WSDL 1.1" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Web Services Description Language (WSDL)
	1.1</titleref>, E. Christensen, et al, Authors. World Wide Web
	Consortium, March 2001. Available at
	http://www.w3.org/TR/2001/NOTE-wsdl-20010315.
      </bibl>
<bibl href="http://www.w3.org/TR/2006/CR-wsdl20-20060327/" id="WSDL20" key="WSDL 2.0 Core Language" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Web Services Description Language (WSDL) Version 2.0
	Part 1: Core Language</titleref>, R. Chinnici, J. J. Moreau,
	A. Ryman, S. Weerawarana, Editors. World Wide Web Consortium,
	27 March 2006. This version of the WSDL 2.0 specification is
	http://www.w3.org/TR/2006/CR-wsdl20-20060327. The <loc href="http://www.w3.org/TR/wsdl20/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest version of WSDL
	2.0</loc> is available at http://www.w3.org/TR/wsdl20.
      </bibl>
<bibl href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0.pdf" id="WS-Security" key="WS-Security 2004" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Web Services Security: SOAP Message Security 1.0
	(WS-Security 2004)</titleref>, A. Nadalin, C. Kaler,
	P. Hallam-Baker, and R. Monzillo, Editors. Organization for the Advancement of Structured Information Standards, March
	2004. Available at
	http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0.pdf.
      </bibl>
<bibl href="http://www.w3.org/TR/2004/REC-xml-infoset-20040204/" id="XMLInfoset" key="XML Information Set" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">XML Information Set (Second Edition)</titleref>,
        J. Cowan and R. Tobin, Editors. World Wide Web Consortium, 24
        October 2001, revised 4 February 2004.  This version of the
        XML Information Set Recommendation is
        http://www.w3.org/TR/2004/REC-xml-infoset-20040204. The <loc href="http://www.w3.org/TR/xml-infoset/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest version of XML
        Information Set</loc> is available at
        http://www.w3.org/TR/xml-infoset.
      </bibl>
<bibl href="http://www.w3.org/TR/2006/REC-xml-names-20060816/" id="XML-NS" key="XML Namespaces" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Namespaces in XML 1.0</titleref>, T. Bray, D. Hollander,
	A. Layman, and R. Tobin, Editors. World Wide Web Consortium,
	14 January 1999, revised 16 August 2006. This version of the
	XML Information Set Recommendation is
	http://www.w3.org/TR/2006/REC-xml-names-20060816/. The <loc href="http://www.w3.org/TR/REC-xml-names/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest version of
	Namespaces in XML</loc> is available at
	http://www.w3.org/TR/REC-xml-names.
      </bibl>
<bibl href="http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/" id="XMLSchemaPart2" key="XML Schema Datatypes" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">XML Schema Part 2: Datatypes Second
	Edition</titleref>, P. Byron and A. Malhotra, Editors. World
	Wide Web Consortium, 2 May 2001, revised 28 October 2004. This
	version of the XML Schema Part 2 Recommendation is
	http://www.w3.org/TR/2004/REC-xmlschema-2-20041028. The <loc href="http://www.w3.org/TR/xmlschema-2/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest version of XML
	Schema Part 2</loc> is available at
	http://www.w3.org/TR/xmlschema-2.
      </bibl>
<bibl href="http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/" id="XMLSchemaPart1" key="XML Schema Structures" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">XML Schema Part 1: Structures Second
	Edition</titleref>, H. Thompson, D. Beech, M. Maloney, and
	N. Mendelsohn, Editors. World Wide Web Consortium, 2 May 2001,
	revised 28 October 2004. This version of the XML Schema Part 1
	Recommendation is
	http://www.w3.org/TR/2004/REC-xmlschema-1-20041028. The <loc href="http://www.w3.org/TR/xmlschema-1/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest version of XML
	Schema Part 1</loc> is available at
	http://www.w3.org/TR/xmlschema-1.
      </bibl>
</blist>
</div2>
<div2 id="Informative-References">
<head>Other References</head>
<blist>
<bibl diff="add" href="http://www.w3.org/TR/2005/REC-soap12-mtom-20050125/" id="MTOM" key="MTOM" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">SOAP Message Transmission Optimization Mechanism</phrase></titleref><phrase diff="add">, M. Gudgin, N.
        Mendelsohn, M. Nottingham and H. Ruellan, Editors. World Wide Web Consortium, 25 January
        2005. This version of the SOAP Message Transmission Optimization Mechanism Recommendation
        is http://www.w3.org/TR/2005/REC-soap12-mtom-20050125/. The </phrase><loc href="http://www.w3.org/TR/soap12-mtom/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">latest version of SOAP Message Transmission
          Optimization Mechanism</phrase></loc> <phrase diff="add">is available at http://www.w3.org/TR/soap12-mtom/. </phrase></bibl>
	    
      <bibl href="http://uddi.org/pubs/SchemaCentricCanonicalization-20050523.htm" id="SCC14N" key="SCC14N" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Schema Centric XML Canonicalization Version
	1.0</titleref>, S. Aissi, A. Hately, and M. Hondo,
	Editors. Organization for the Advancement of Structured
	Information Standards, 23 May 2005. This version of the Schema
	Centric XML Canonicalization Version 1.0 is
	http://uddi.org/pubs/SchemaCentricCanonicalization-20050523.htm. The
	<loc href="http://uddi.org/pubs/SchemaCentricCanonicalization.htm" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest
	version of Schema Centric XML Canonicalization Version
	1.0</loc> is available at
	http://uddi.org/pubs/SchemaCentricCanonicalization.htm.
      </bibl>
<bibl diff="add" href="http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/" id="WS-AddressingPolicy" key="WS-Addressing Policy" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">Web Services Addressing 1.0 - WSDL Binding</phrase></titleref><phrase diff="add">, M. Gudgin, M. Hadley, T.
        Rogers and Ü. Yalçinalp, Editors. World Wide Web Consortium, 29 May 2006. This version of
        the Web Services Addressing 1.0 - WSDL Binding is
        http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/. The </phrase><loc href="http://www.w3.org/TR/ws-addr-wsdl" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">latest version of Web Services Addressing 1.0 -
          WSDL Binding</phrase></loc> <phrase diff="add">is available at http://www.w3.org/TR/ws-addr-wsdl. </phrase></bibl>

      <bibl href="http://schemas.xmlsoap.org/ws/2004/09/mex/" id="WS-MetadataExchange" key="WS-MetadataExchange" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Web Services Metadata Exchange
	(WS-MetadataExchange)</titleref>, K. Ballinger, et al,
	Authors. BEA Systems Inc., Computer Associates International,
	Inc., International Business Machines Corporation, Microsoft
	Corporation, Inc., SAP AG, Sun Microsystems, and webMethods,
	September 2004. Available at
	http://schemas.xmlsoap.org/ws/2004/09/mex/
      </bibl>
<bibl href="" id="WS-RMPolicy" key="WS-RM Policy" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">Web Services Reliable Messaging Policy Assertion
	(WS-RM Policy)</titleref>, D. David, A. Kamarkar, G. Pilz, and
	Ü. Yalçinalp, Editors. Organization for the Advancement of Structured Information Standards, 24 April 2006. Available at
	http://www.oasis-open.org/committees/download.php/17838/wsrmp-1.1-spec-wd-08.pdf
      </bibl>
<bibl href="http://www.oasis-open.org/committees/download.php/15979/oasis-wssx-ws-securitypolicy-1.0.pdf" id="WS-SecurityPolicy" key="WS-SecurityPolicy" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">WS-SecurityPolicy v1.0</titleref>, A. Nadalin,
	M. Gudgin, A. Barbir, and H. Granqvist, Editors. Organization for the Advancement of Structured Information Standards, 8
	December 2005. Available at
	http://www.oasis-open.org/committees/download.php/15979/oasis-wssx-ws-securitypolicy-1.0.pdf.
      </bibl>
<bibl href="http://www.w3.org/Submission/2006/SUBM-wsdl11soap12-20060405/" id="WSDL11BindingforSOAP12" key="WSDL 1.1 Binding for SOAP 1.2" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">WSDL 1.1 Binding for SOAP 1.2</titleref>,
	D. Angelov, et al, Authors. World Wide Web Consortium, 5 April
	2006.  Available at
	http://www.w3.org/Submission/2006/SUBM-wsdl11soap12-20060405/.
      </bibl>
<bibl href="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/" id="XML-Signature" key="XML-Signature" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">XML-Signature Syntax and Processing</titleref>,
	D. Eastlake, J. Reagle, and D. Solo, Editors. The Internet
	Society &amp; World Wide Web Consortium, 12 February
	2002. This version of the XML-Signature Syntax and Processing
	Recommendation is
	http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/. The <loc href="http://www.w3.org/TR/xmldsig-core/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">latest version of
	XML-Signature Syntax and Processing</loc> is available at
	http://www.w3.org/TR/xmldsig-core/.
      </bibl>
<bibl diff="add" href="http://www.w3.org/TR/2005/REC-xop10-20050125/" id="XOP" key="XOP" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">
<titleref xlink:actuate="onRequest" xlink:show="new" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">XML-binary Optimized Packaging</phrase></titleref><phrase diff="add">, M. Gudgin, N. Mendelsohn, M.
        Nottingham and H. Ruellan, Editors. World Wide Web Consortium, 25 January 2005. This
        version of the XML-binary Optimized Packaging Recommendation is
        http://www.w3.org/TR/2005/REC-xop10-20050125/. The </phrase><loc href="http://www.w3.org/TR/xop10/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">latest version of XML-binary Optimized Packaging</phrase></loc> <phrase diff="add">is available at
        http://www.w3.org/TR/xop10/. </phrase></bibl>

    </blist>
</div2>
</div1>
<div1 id="AppendixA">
<head>UDDI tModel Definitions</head>
<p>This section contains the UDDI tModel definitions for the canonical
tModels used in Section <specref ref="AttachingPoliciesUsingUDDI"></specref>. The tModelKeys shown in the tModel
structure sections are valid UDDI Version 2 keys. When using UDDI
Version 3, the corresponding derived UDDI Version 2 keys must be
used.</p>
<div2 id="RemotePolicyReferenceCategorySystem">
<head>Remote Policy Reference Category System</head>
<div3 id="DesigGoals1">
<head>Design Goals</head>
<p>This tModel is used to attach a <termref def="policy">policy</termref> to a UDDI entity by referencing the policy's IRI.</p>
</div3>
<div3 id="tModelDefinition1">
<head>tModel Definition</head>
<table border="1" cellpadding="5" cellspacing="0" id="Table7">
<tbody>
<tr>
<th colspan="1" rowspan="1">Name:</th>
<td colspan="1" rowspan="1">
<loc href="http://schemas.xmlsoap.org/ws/2003/03/remotepolicyreference/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">http://schemas.xmlsoap.org/ws/2003/03/remotepolicyreference</loc>
</td>
</tr>
<tr>
<th colspan="1" rowspan="1">Description:</th>
<td colspan="1" rowspan="1">Category system used for UDDI entities
to point to an external Web services policy attachment policy that
describes their characteristics. See Web Services Policy 1.5 - Attachment specification
for further details.</td>
</tr>
<tr>
<th colspan="1" rowspan="1">UDDI Key (V3):</th>
<td colspan="1" rowspan="1">
<code>uddi:schemas.xmlsoap.org:remotepolicyreference:2003_03</code>
</td>
</tr>
<tr>
<th colspan="1" rowspan="1">UDDI V1,V2 format key:</th>
<td colspan="1" rowspan="1">
<code>uuid:a27078e4-fd38-320a-806f-6749e84f8005</code>
</td>
</tr>
<tr>
<th colspan="1" rowspan="1">Categorization:</th>
<td colspan="1" rowspan="1">categorization</td>
</tr>
<tr>
<th colspan="1" rowspan="1">Checked:</th>
<td colspan="1" rowspan="1">No</td>
</tr>
</tbody>
</table>
</div3>
<div3 id="ModelStructure1">
<head>tModel Structure</head>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;tModel tModelKey="uuid:a27078e4-fd38-320a-806f-6749e84f8005" &gt;
  &lt;name&gt;http://schemas.xmlsoap.org/ws/2003/03/remotepolicyreference&lt;/name&gt;
  &lt;description xml:lang="EN"&gt;Category system used for UDDI entities to point to an external Web Services Policy Attachment policy expression that describes their characteristics. See Web Services Policy 1.5 - Attachment specification for further details.&lt;/description&gt;
  &lt;categoryBag&gt;
    &lt;keyedReference
       keyName="uddi-org:types:categorization"
       keyValue="categorization"
       tModelKey="uuid:c1acf26d-9672-4404-9d70-39b756e62ab4" /&gt;
  &lt;/categoryBag&gt;
&lt;/tModel&gt;</eg>
</div3>
</div2>
<div2 id="WS-PolicyTypesCategorySystem">
<head>Web Services Policy Types Category System</head>
<div3 id="DesignGoals2">
<head>Design Goals</head>
<p>This tModel is used to categorize tModels as representing <termref def="policy_expression">policy
expressions</termref>. There is only one valid value, namely <code>"policy"</code>, that
indicates this very fact. It is <rfc2119>RECOMMENDED</rfc2119> that tModels categorized as
representing <termref def="policy_expression">policy expressions</termref> reference no more and no less than
this very <termref def="policy_expression">policy expression</termref> using the remote policy reference category
system.</p>
</div3>
<div3 id="tModelDefinition2">
<head>tModel Definition</head>
<table border="1" cellpadding="5" cellspacing="0" id="Table8">
<tbody>
<tr>
<th colspan="1" rowspan="1">Name:</th>
<td colspan="1" rowspan="1">
<loc href="http://schemas.xmlsoap.org/ws/2003/03/policytypes/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">http://schemas.xmlsoap.org/ws/2003/03/policytypes</loc>
</td>
</tr>
<tr>
<th colspan="1" rowspan="1">Description:</th>
<td colspan="1" rowspan="1">Web services policy types category system used for UDDI tModels to
characterize them as Web services policy–based <termref def="policy_expression">policy expressions</termref>.</td>
</tr>
<tr>
<th colspan="1" rowspan="1">UDDI Key (V3):</th>
<td colspan="1" rowspan="1">
<code>uddi:schemas.xmlsoap.org:policytypes:2003_03</code>
</td>
</tr>
<tr>
<th colspan="1" rowspan="1">UDDI V1,V2 format key:</th>
<td colspan="1" rowspan="1">
<code>uuid:fa1d77dc-edf0-3a84-a99a-5972e434e993</code>
</td>
</tr>
<tr>
<th colspan="1" rowspan="1">Categorization:</th>
<td colspan="1" rowspan="1">categorization</td>
</tr>
<tr>
<th colspan="1" rowspan="1">Checked:</th>
<td colspan="1" rowspan="1">No</td>
</tr>
</tbody>
</table>
</div3>
<div3 id="ModelStructure2">
<head>tModel Structure</head>
<eg diff="add" role="needs-numbering" xml:space="preserve">&lt;tModel tModelKey="uuid:fa1d77dc-edf0-3a84-a99a-5972e434e993" &gt;
  &lt;name&gt;http://schemas.xmlsoap.org/ws/2003/03/policytypes&lt;/name&gt;
  &lt;description xml:lang="EN"&gt;Web Services Policy Types category system used for UDDI tModels to characterize them as Web Services Policy – based policy expressions.&lt;/description&gt;
  &lt;categoryBag&gt;
    &lt;keyedReference
       keyName="uddi-org:types:categorization"
       keyValue="categorization"
       tModelKey="uuid:c1acf26d-9672-4404-9d70-39b756e62ab4" /&gt;
  &lt;/categoryBag&gt;
&lt;/tModel&gt;</eg>
</div3>
</div2>
<div2 id="LocalPolicyReferenceCategorySystem">
<head>Local Policy Reference Category System</head>
<div3 id="DesignGoals3">
<head>Design Goals</head>
<p>This tModel is used to attach a <termref def="policy_expression">policy expression</termref> to a UDDI entity
by referencing the UDDI entity that represents this <termref def="policy_expression">policy expression</termref>. The local policy
reference category system is based on tModelKeys. It is expected that
referenced tModels are registered with the same UDDI registry and are
categorized as representing <termref def="policy_expression">policy
expressions</termref> using the Web services policy types category
system.</p>
</div3>
<div3 id="tModelDefinition3">
<head>tModel Definition</head>
<table border="1" cellpadding="5" cellspacing="0" id="Table9">
<tbody>
<tr>
<th colspan="1" rowspan="1">Name:</th>
<td colspan="1" rowspan="1">
<loc href="http://schemas.xmlsoap.org/ws/2003/03/localpolicyreference/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">http://schemas.xmlsoap.org/ws/2003/03/localpolicyreference</loc>
</td>
</tr>
<tr>
<th colspan="1" rowspan="1">Description:</th>
<td colspan="1" rowspan="1">Category system used for UDDI entities to point to a Web services
policy <termref def="policy_expression">policy expression</termref>
tModel that describes their characteristics. See Web Services Policy 1.5 - Attachment
specification for further details.</td>
</tr>
<tr>
<th colspan="1" rowspan="1">UDDI Key (V3):</th>
<td colspan="1" rowspan="1">
<code><phrase diff="chg">uddi:schemas.xmlsoap.org:localpolicyreference:2003_03</phrase></code>
</td>
</tr>
<tr>
<th colspan="1" rowspan="1">UDDI V1,V2 format key:</th>
<td colspan="1" rowspan="1">
<code>uuid:a27f7d45-ec90-31f7-a655-efe91433527c</code>
</td>
</tr>
<tr>
<th colspan="1" rowspan="1">Categorization:</th>
<td colspan="1" rowspan="1">categorization</td>
</tr>
<tr>
<th colspan="1" rowspan="1">Checked:</th>
<td colspan="1" rowspan="1">Yes</td>
</tr>
</tbody>
</table>
</div3>
<div3 id="ModelStructure3">
<head>tModel Structure</head>
<eg diff="chg" role="needs-numbering" xml:space="preserve">&lt;tModel tModelKey="uuid:a27f7d45-ec90-31f7-a655-efe91433527c" &gt;
  &lt;name&gt;http://schemas.xmlsoap.org/ws/2003/03/localpolicyreference&lt;/name&gt;
  &lt;description xml:lang="en"&gt;Category system used for UDDI entities to point to a Web Services Policy policy expression tModel that describes their characteristics. See Web Services Policy 1.5 - Attachment specification for further details.&lt;/description&gt;
  &lt;categoryBag&gt;
    &lt;keyedReference
       keyName="uddi-org:types:categorization"
       keyValue="categorization"
       tModelKey="uuid:c1acf26d-9672-4404-9d70-39b756e62aB4" /&gt;
    &lt;keyedReference
       keyName="uddi-org:types:checked"
       keyValue="checked"
       tModelKey="uuid:c1acf26d-9672-4404-9d70-39b756e62aB4" /&gt;
      &lt;keyedReference
       keyName="uddi-org:entityKeyValues"
       keyValue="tModelKey"
       tModelKey="uuid:916b87bf-0756-3919-8eae-97dfa325e5a4" /&gt;
  &lt;/categoryBag&gt;
&lt;/tModel&gt; </eg>
</div3>
</div2>
</div1>
      
<inform-div1 diff="chg" id="acknowledgments" xml:base="file:///C:/2006/ws/policy/acknowledgements.xml">
  <head>Acknowledgements</head>

  <p>This document is the work of the <loc href="http://www.w3.org/2002/ws/policy/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">W3C Web Services Policy
  Working Group</loc>.</p>

  <p>
    Members of the Working Group are (at the time of writing, and by
    alphabetical order):
      Dimitar Angelov (SAP AG), Abbie Barbir (Nortel Networks), Charlton Barreto (Adobe Systems Inc.), Sergey Beryozkin (IONA Technologies, Inc.), Vladislav Bezrukov (SAP AG), Toufic Boubez (Layer 7 Technologies), Paul Cotton (Microsoft Corporation), Jeffrey Crump (Sonic Software), Glen Daniels (Sonic Software), Ruchith Fernando (WSO2), Christopher Ferris (IBM Corporation), William Henry (IONA Technologies, Inc.), Frederick Hirsch (Nokia), Maryann Hondo (IBM Corporation), Tom Jordahl (Adobe Systems Inc.), Philippe Le Hégaret (W3C/MIT), Jong Lee (BEA Systems, Inc.), Mark Little (JBoss Inc.), Ashok Malhotra (Oracle Corporation), Monica Martin (Sun Microsystems, Inc.), Jeff Mischkinsky (Oracle Corporation), Dale Moberg (Cyclone Commerce, Inc.), Anthony Nadalin (IBM Corporation), David Orchard (BEA Systems, Inc.), <phrase diff="del">Bijan Parsia (University of Manchester), </phrase>Fabian Ritzmann (Sun Microsystems, Inc.), Daniel Roth (Microsoft Corporation), Sanka Samaranayake (WSO2), Felix Sasaki (W3C/Keio), Skip Snow (Citigroup), Yakov Sverdlov (Computer Associates), Mark Temple-Raston (Citigroup), Asir Vedamuthu (Microsoft Corporation), Sanjiva Weerawarana (WSO2), Ümit Yalçinalp (SAP AG), Prasad Yendluri (webMethods, Inc.).
  </p>

  <p diff="add">
    <phrase diff="add">Previous members of the Working Group were:
       Bijan Parsia (University of Manchester), Seumas Soltysik (IONA Technologies, Inc.)

  </phrase></p>

  <p>
    The people who have contributed to <loc href="http://lists.w3.org/Archives/Public/public-ws-policy/" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">discussions
    on public-ws-policy@w3.org</loc> are also gratefully
    acknowledged.
  </p>
</inform-div1>

  <inform-div1 id="change-description">
<head>Changes in this Version of the Document</head>
<p>A list of substantive changes since the Working Draft dated 31 July 2006
      is below:</p>
<ulist>
<item>
<p>Added an empty conformance section.</p>
</item>
<item>
<p>Replaced URI with IRI.</p>
</item>
<item diff="add">
<p><phrase diff="add">Added a new section - </phrase><specref ref="ws-policy-attachment-for-wsdl20"></specref> <phrase diff="add">- that describes a 
      mechanism for associating policy expressions with Web service constructs in WSDL 2.0.</phrase></p>
</item>

    </ulist>
</inform-div1>
<inform-div1 id="change-log">
<head>Web Services Policy 1.5 - Attachment Change Log</head>
<table border="1" id="ws-policy-attachment-changelog-table">
<tbody>
<tr>
<th colspan="1" rowspan="1">Date</th>
<th colspan="1" rowspan="1">Author</th>
<th colspan="1" rowspan="1">Description</th>
</tr>

<tr>
<td colspan="1" rowspan="1">20060712</td>
<td colspan="1" rowspan="1">ASV</td>
<td colspan="1" rowspan="1">Updated the list of editors. Completed action items 
            <loc href="http://www.w3.org/2006/07/12-ws-policy-minutes.html#action20" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">20</loc> 
            from the Austin F2F.</td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060712</td>
<td colspan="1" rowspan="1">DBO</td>
<td colspan="1" rowspan="1">Completed action item <loc href=" http://www.w3.org/2006/07/12-ws-policy-minutes.html#action12" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">12</loc>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060718</td>
<td colspan="1" rowspan="1">DBO</td>
<td colspan="1" rowspan="1">Completed action items
           Editors to remove extraneous namespace decl in the example at the end of section 3.4 <loc href="http://www.w3.org/2006/07/12-ws-policy-minutes.html#action18" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">18</loc>,
           RFC2606 for domain names <loc href="http://www.w3.org/2006/07/12-ws-policy-minutes.html#action09" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">09</loc> (note: PLH had already done but it didn't show up in the change log)  
           editors to straighten up Note after example 3-1 <loc href="http://www.w3.org/2006/07/12-ws-policy-minutes.html#action11" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">11</loc>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060719</td>
<td colspan="1" rowspan="1">TIB</td>
<td colspan="1" rowspan="1">Completed action item <loc href="http://www.w3.org/2006/07/13-ws-policy-minutes.html#action22" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">22: Linked SVG graphic</loc>
</td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060721</td>
<td colspan="1" rowspan="1">ASV</td>
<td colspan="1" rowspan="1">Completed action items
            <loc href="http://www.w3.org/2006/07/13-ws-policy-minutes.html#action23" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">23</loc>,
            <loc href="http://www.w3.org/2006/07/13-ws-policy-minutes.html#action25" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">25</loc> and 
            <loc href="http://www.w3.org/2006/07/13-ws-policy-minutes.html#action26" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">26</loc> 
            from the Austin F2F.</td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060721</td>
<td colspan="1" rowspan="1">ASV</td>
<td colspan="1" rowspan="1">Completed action item
            <loc href="http://www.w3.org/2006/07/13-ws-policy-minutes.html#action29" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">29</loc>
            from the Austin F2F.</td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060726</td>
<td colspan="1" rowspan="1">ASV</td>
<td colspan="1" rowspan="1">Incorporated the 
            <loc href="http://lists.w3.org/Archives/Public/public-ws-policy/2006Jul/0107.html" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">XML 
              namespace URI versioning policy</loc> adopted by the WG. 
          </td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060808</td>
<td colspan="1" rowspan="1">DBO</td>
<td colspan="1" rowspan="1">Completed action items: <loc href="http://www.w3.org/2006/07/12-ws-policy-minutes.html#action15" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">15</loc> 
                       	    as early as possible in the doc, use the definition that are defined in the doc.
                       	    Issue <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3545" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3545</loc>,
                       	    use of {any} and {@any} in xpath-like expressions not defined in Notational Conventions section                     	                         	
                       	</td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060808</td>
<td colspan="1" rowspan="1">ASV</td>
<td colspan="1" rowspan="1">Implemented the 
            <loc href="http://www.w3.org/2006/08/02-ws-policy-minutes.html#action08" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">resolution</loc> 
            for issue 
            <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3543" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3543</loc>.                	
          </td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060809</td>
<td colspan="1" rowspan="1">DBO</td>
<td colspan="1" rowspan="1">Implemented the 
            <loc href="http://www.w3.org/2006/08/09-ws-policy-minutes.html#action09" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">resolution</loc> 
            for issue 
            <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3546" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3546</loc>: wsdl 2.0 status mention.                	
          </td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060809</td>
<td colspan="1" rowspan="1">ASV</td>
<td colspan="1" rowspan="1">Implemented the 
          <loc href="http://www.w3.org/2006/08/09-ws-policy-minutes.html#action06" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">resolution</loc> 
          for issue 
          <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3556" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3556</loc>  
          and the <loc href="http://www.w3.org/2006/08/09-ws-policy-minutes.html#action07" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">resolution</loc>
           for issue <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3558" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3558</loc>.                	
        </td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060811</td>
<td colspan="1" rowspan="1">DBO</td>
<td colspan="1" rowspan="1">Completed action items: <loc href="http://www.w3.org/2006/07/12-ws-policy-minutes.html#action15" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">15</loc> 
                       	    remove use if emph/ital terms.  Framework: removed emph on conceptually replace and support; attachment: make merge a termdef                     	
                       	</td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060813</td>
<td colspan="1" rowspan="1">ASV</td>
<td colspan="1" rowspan="1">Added a new Section <specref ref="change-description"></specref> (that provides 
            a list of substantive chanages since the previous publication).                    	
          </td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060825</td>
<td colspan="1" rowspan="1">PY</td>
<td colspan="1" rowspan="1">Implemented the 
            <loc href="http://www.w3.org/2006/08/23-ws-policy-minutes.html#action12" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">resolution</loc> 
            for issue 
            <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3544" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3544</loc>.                	
          </td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060827</td>
<td colspan="1" rowspan="1">TIB</td>
<td colspan="1" rowspan="1">Completed action item:
            <loc href="http://www.w3.org/2006/08/23-ws-policy-minutes.html#action03" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">resolution</loc> 
            for adding Conformance section.                  	
          </td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060827</td>
<td colspan="1" rowspan="1">TIB</td>
<td colspan="1" rowspan="1">Implemented the 
            <loc href="http://www.w3.org/2006/08/23-ws-policy-minutes.html#action01" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">resolution</loc> 
            for issue 
            <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3605" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3605</loc>: typo in example.                	
          </td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060829</td>
<td colspan="1" rowspan="1">ASV</td>
<td colspan="1" rowspan="1">Implemented the 
            <loc href="http://www.w3.org/2006/08/23-ws-policy-minutes.html#action06" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">resolution</loc> 
            for issue 
            <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3561" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3561</loc>: replaced URI with IRI.                	
          </td>
</tr>
<tr>
<td colspan="1" rowspan="1">200609006</td>
<td colspan="1" rowspan="1">DBO</td>
<td colspan="1" rowspan="1">Completed partial resolution	for issue 
                            <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3590" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3590</loc>.
                            for adding document attribute extensbility of wsp:Policy/@{any} and wsp:Policy/.../wsp:PolicyReference/@{any},
                            specifically making attribute extensibility for any namespace.             	
                        </td>
</tr>
<tr>
<td colspan="1" rowspan="1">20060906</td>
<td colspan="1" rowspan="1">ASV</td>
<td colspan="1" rowspan="1">Implemented the 
          <loc href="http://www.w3.org/2006/09/06-ws-policy-minutes.html#action07" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">resolution</loc> 
          for issue 
          <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3557" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink">3557</loc>: clarify the use of domain expressions.                	
        </td>
</tr>
<tr diff="add">
<td colspan="1" diff="add" rowspan="1">20060924</td>
<td colspan="1" diff="add" rowspan="1">TIB</td>
<td colspan="1" diff="add" rowspan="1">Implemented the 
            <loc href="http://www.w3.org/2006/09/14-ws-policy-minutes.html#item12" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">resolution</phrase></loc> 
            for issue 
            <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3709" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">3709</phrase></loc>: Editorial corrections from UDDI team.                	
          </td>
</tr>
<tr diff="add">
<td colspan="1" diff="add" rowspan="1">20060925</td>
<td colspan="1" diff="add" rowspan="1">ASV</td>
<td colspan="1" diff="add" rowspan="1">Created <specref ref="ws-policy-attachment-for-wsdl20"></specref> per action item <loc href="http://www.w3.org/2005/06/tracker/wspolicyeds/actions/37" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">2</phrase></loc> from the
            Bellevue F2F. This section is based on a <loc href="http://lists.w3.org/Archives/Public/public-ws-policy/2006Sep/0037.html" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">contribution</phrase></loc> from BEA, IBM, Microsoft and Oracle.</td>
</tr>
<tr diff="add">
<td colspan="1" diff="add" rowspan="1">20061002</td>
<td colspan="1" diff="add" rowspan="1">DBO</td>
<td colspan="1" diff="add" rowspan="1">Implemented the 
            <loc href="http://www.w3.org/2005/06/tracker/wspolicy/actions/64" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"></loc> 
            for issue 
            <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3559" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">3559</phrase></loc>: Conformance Section.                	
          </td>
</tr>
<tr diff="add">
<td colspan="1" diff="add" rowspan="1">20061002</td>
<td colspan="1" diff="add" rowspan="1">DBO</td>
<td colspan="1" diff="add" rowspan="1">Implemented the 
            <loc href="http://www.w3.org/2005/06/tracker/wspolicyeds/actions/48" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">resolution</phrase></loc>
            for issue 
            <loc href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=3712" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">3712</phrase></loc>:wsp:PolicyReference can be used in any place where you can use wsp:Policy               	
          </td>
</tr>
<tr diff="add">
<td colspan="1" diff="add" rowspan="1">20061008</td>
<td colspan="1" diff="add" rowspan="1">MH</td>
<td colspan="1" diff="add" rowspan="1">Implemented the 
            <loc href="http://www.w3.org/2005/06/tracker/wspolicyeds/actions/1" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">resolution</phrase></loc>
            for issue 
            <loc href="http://www.w3.org/2006/07/13-ws-policy-minutes.html#action10" xlink:actuate="onRequest" xlink:show="replace" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"><phrase diff="add">summary of Action 10 from F2F</phrase></loc> replaced "subject" instances with "policy subject"             	
          </td>
</tr>

      </tbody>
</table>
</inform-div1>
</back>
</spec>
