- From: Arthur Ryman via cvs-syncmail <cvsmail@w3.org>
- Date: Mon, 21 Mar 2005 02:13:07 +0000
- To: public-ws-desc-eds@w3.org
Update of /sources/public/2002/ws/desc/wsdl20 In directory hutz:/tmp/cvs-serv3841 Modified Files: wsdl20-z.html wsdl20.pdf wsdl20.html wsdl20.xml wsdl20-z-ie.html wsdl20.tex Log Message: LC104: The operations, faults, features, and properties of an Interface component are those defined directly on the component and do not include those from the extended interfaces. Index: wsdl20-z-ie.html =================================================================== RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20-z-ie.html,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** wsdl20-z-ie.html 20 Mar 2005 19:35:09 -0000 1.1 --- wsdl20-z-ie.html 21 Mar 2005 02:13:05 -0000 1.2 *************** *** 1353,1363 **** application.</p> ! <p> An interface can optionally extend one or more other interfaces. To avoid circular definitions, an interface MUST NOT appear as an element of the set of interfaces it extends, either directly or indirectly. ! An interface contains all the operations defined by the interfaces it extends, along with any operations it directly ! defines. In the process, operation components that are equivalent per <a href="#compequiv"><b>2.17 Equivalence of Components</b></a> are treated as one. The interface extension mechanism behaves in a similar --- 1353,1365 ---- application.</p> ! <p class="diff-chg"> An interface can optionally extend one or more other interfaces. To avoid circular definitions, an interface MUST NOT appear as an element of the set of interfaces it extends, either directly or indirectly. ! The set of operations available in an interface includes all the operations defined by the interfaces it extends, along with any operations it directly ! defines. The operations directly defined on an interface are ! referred to as the <em xmlns:z="http://www.w3.org/2004/zml" xmlns:xlink="http://www.w3.org/1999/xlink">declared</em> operations of the interface. ! In the process, operation components that are equivalent per <a href="#compequiv"><b>2.17 Equivalence of Components</b></a> are treated as one. The interface extension mechanism behaves in a similar *************** *** 1376,1403 **** <li><p>{name} REQUIRED. An <em>xs:QName</em>.</p></li> ! <li><p>{extended interfaces} OPTIONAL. A set of Interface ! components which this interface extends. This set MUST be closed ! under the operation of adding the values of the {extended interfaces} ! properties of all its members.</p> </li> ! <li><p>{faults} OPTIONAL. A set of Interface Fault ! components. This set MUST include the values of the {faults} ! properties of all the interface definitions that are listed ! under the {extended interfaces} property of the component.</p></li> ! <li><p>{operations} OPTIONAL. A set of Interface Operation ! components. This set MUST include the values of the {operations} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></li> ! <li><p>{features} OPTIONAL. A set of Feature ! components. This set MUST include the values of the {features} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></li> ! <li><p>{properties} OPTIONAL. A set of Property ! components. This set MUST include the values of the {properties} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></li> </ul> --- 1378,1395 ---- <li><p>{name} REQUIRED. An <em>xs:QName</em>.</p></li> ! <li><p class="diff-chg">{extended interfaces} OPTIONAL. A set of declared Interface ! components which this interface extends.</p> </li> ! <li><p class="diff-chg">{faults} OPTIONAL. The set of declared Interface Fault ! components.</p></li> ! <li><p class="diff-chg">{operations} OPTIONAL. A set of declared Interface Operation ! components.</p></li> ! <li><p class="diff-chg">{features} OPTIONAL. A set of declared Feature ! components.</p></li> ! <li><p class="diff-chg">{properties} OPTIONAL. A set of declared Property ! components.</p></li> </ul> *************** *** 1405,1410 **** <a name="zed-Interface"></a><div id="twisty-head-zed-Interface" class="twisty-head"><img src="images/left-twisty-13.png" class="twisty-icon"><a href="javascript:show('zed-Interface')">Interface</a>...</div><div id="twisty-body-zed-Interface" class="twisty-body"><img src="images/down-twisty-13.png" class="twisty-icon"><a href="javascript:hide('zed-Interface')">Interface</a> [ <a onClick="showAll()" href="#zed-Interface">show all</a> ] [ <a onClick="hideAll()" href="#zed-Interface">hide all</a> ]<br> <p>Let <span class="zi">Interface</span> be the set of all Interface components:</p> ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">Interface</span></span></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">Base</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">name</span> <span class="zinfix">:</span> <span class="zi">QName</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">extendedInterfaces</span> <span class="zinfix">:</span><span class="zprefix"><span class="doublestruck">P</span></span><span class="zi">ID</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">faults</span> <span class="zinfix">:</span><span class="zprefix"><span class="doublestruck">P</span></span><span class="zi">ID</span></span></td></tr><tr><td class="zschemalasttext" colspan"3"><span class="zschematext"><span class="zi">operations</span> <span class="zinfix">:</span><span class="zprefix"><span class="doublestruck">P</span></span><span class="zi">ID</span></span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></table> <div class="zsee"><span class="zsmall">See<span class="zi"> <a href="#zed-Base">Base</a>, <a href="#zed-QName">QName</a>, <a href="#zed-ID">ID</a>.</span></span></div> --- 1397,1407 ---- <a name="zed-Interface"></a><div id="twisty-head-zed-Interface" class="twisty-head"><img src="images/left-twisty-13.png" class="twisty-icon"><a href="javascript:show('zed-Interface')">Interface</a>...</div><div id="twisty-body-zed-Interface" class="twisty-body"><img src="images/down-twisty-13.png" class="twisty-icon"><a href="javascript:hide('zed-Interface')">Interface</a> [ <a onClick="showAll()" href="#zed-Interface">show all</a> ] [ <a onClick="hideAll()" href="#zed-Interface">hide all</a> ]<br> <p>Let <span class="zi">Interface</span> be the set of all Interface components:</p> + <ul> + <li><p>Let <span class="zi">allExtendedInterfaces</span> be the set off all interfaces that are extended directly or indirectly by this interface.</p></li> + <li><p>Let <span class="zi">allFaults</span> be the set of all faults that are directly or indirectly on this interface.</p></li> + <li><p>Let <span class="zi">allOperations</span> be the set of all operations that are directly or indirectly on this interface.</p></li> + </ul> ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">Interface</span></span></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">Base</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">name</span> <span class="zinfix">:</span> <span class="zi">QName</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">extendedInterfaces</span> <span class="zinfix">:</span><span class="zprefix"><span class="doublestruck">P</span></span><span class="zi">ID</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">faults</span> <span class="zinfix">:</span><span class="zprefix"><span class="doublestruck">P</span></span><span class="zi">ID</span></span></td></tr><tr><td class="zschemalasttext" colspan"3"><span class="zschematext"><span class="zi">operations</span> <span class="zinfix">:</span><span class="zprefix"><span class="doublestruck">P</span></span><span class="zi">ID</span></span></td></tr><tr><td class="l"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">allExtendedInterfaces</span> <span class="zinfix">:</span><span class="zprefix"><span class="doublestruck">P</span></span><span class="zi">ID</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">allFaults</span> <span class="zinfix">:</span><span class="zprefix"><span class="doublestruck">P</span></span><span class="zi">ID</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">allOperations</span> <span class="zinfix">:</span><span class="zprefix"><span class="doublestruck">P</span></span><span class="zi">ID</span></span></td></tr><tr><td class="bl"></td><td></td><td></td></tr>tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">extendedInterfaces</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">allExtendedInterfaces</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">faults</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">allFaults</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">operations</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">allOperations</span></span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></table> <div class="zsee"><span class="zsmall">See<span class="zi"> <a href="#zed-Base">Base</a>, <a href="#zed-QName">QName</a>, <a href="#zed-ID">ID</a>.</span></span></div> *************** *** 1421,1425 **** </p> ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">InterfaceRI</span></span></td><td></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">ComponentModel2</span></span></td></tr><tr><td class="bl"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zprefix"><span class="symbol">"</span></span><span class="zi">Interface</span> <span class="zinfix">|</span><span class="zprefix"><span class="zi"><span class="symbol">q</span></span></span><span class="zi">Interface</span><span class="zinfix"><span class="symbol">Î</span></span><span class="zi">interfaceComps</span> <span class="zinfix"><span class="symbol">·</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">BaseRI</span><spa class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">id</span><span class="zinfix"><span class="symbol">Ï</span></span><span class="zi">extendedInterfaces</span><span class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">extendedInterfaces</span><span class="zinfix"><span class="symbol">Ì</span></span><span class="zi">interfaceIds</span><span class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">faults</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">interfaceFaultIds</span><span class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschemaasttext" colspan="3"><span class="zschematext"> <span class="zi">operations</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">interfaceOpIds</span></span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></table> <div class="zsee"><span class="zsmall">See<span class="zi"> <a href="#zed-ComponentModel2">ComponentModel2</a>, <a href="#zed-Interface">Interface</a>, <a href="#zed-BaseRI">BaseRI</a>.</span></span></div> --- 1418,1422 ---- </p> ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">InterfaceRI</span></span></td><td></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">ComponentModel2</span></span></td></tr><tr><td class="bl"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zprefix"><span class="symbol">"</span></span><span class="zi">Interface</span> <span class="zinfix">|</span><span class="zprefix"><span class="zi"><span class="symbol">q</span></span></span><span class="zi">Interface</span><span class="zinfix"><span class="symbol">Î</span></span><span class="zi">interfaceComps</span> <span class="zinfix"><span class="symbol">·</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">BaseRI</span><spa class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">extendedInterfaces</span><span class="zinfix"><span class="symbol">Ì</span></span><span class="zi">interfaceIds</span><span class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">faults</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">interfaceFaultIds</span><span class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"> <span class="zi">operations</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">interfaceOpIds</span></span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></tble> <div class="zsee"><span class="zsmall">See<span class="zi"> <a href="#zed-ComponentModel2">ComponentModel2</a>, <a href="#zed-Interface">Interface</a>, <a href="#zed-BaseRI">BaseRI</a>.</span></span></div> *************** *** 1437,1441 **** <ul> <li><p>Every Interface component satifies the base referential integrity constraints.</p></li> - <li><p>No Interface component extends itself.</p></li> <li><p>The Interface components extended by each Interface component are contained in the component model.</p></li> <li><p>The Fault components of each Interface component are contained in the component model.</p></li> --- 1434,1437 ---- *************** *** 1447,1459 **** <a name="zed-InterfaceClosure"></a><div id="twisty-head-zed-InterfaceClosure" class="twisty-head"><img src="images/left-twisty-13.png" class="twisty-icon"><a href="javascript:show('zed-InterfaceClosure')">InterfaceClosure</a>...</div><div id="twisty-body-zed-InterfaceClosure" class="twisty-body"><img src="images/down-twisty-13.png" class="twisty-icon"><a href="javascript:hide('zed-InterfaceClosure')">InterfaceClosure</a> [ <a onClick="showAll()" href="#zed-InterfaceClosure">show all</a> ] [ <a onClick="hideAll()" href="#zed-InterfaceClosure">hide all</a> ]<br> <p> ! The properties of an Interface component contain the properties of each ! Interface component that it extends. </p> <p> ! Let <span class="zi">InterfaceClosure</span> express the Interface closure constraints: </p> ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">InterfaceClosure</span></span></td><td></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">ComponentModel2</span></span></td></tr><tr><td class="bl"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zprefix"><span class="symbol">"</span></span><span class="zi">x</span><span class="zprefix">,</span> <span class="zi">y</span> <span class="zinfix">:</span> <span class="zi">interfaceComps</span> <span class="zinfix">|</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">id</span><span class="zinfix"><span class="symbol">Î</span></span><span class="zi">x</span>.<span class="zi">extendedInterfaces</span> <span clas="zinfix"><span class="symbol">·</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">extendedInterfaces</span><span class="zinfix"><span class="symbol">Ì</span></span><span class="zi">x</span>.<span class="zi">extendedInterfaces</span><span class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">faults</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">x</span>.<span class="zi">faults</span><span class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi>y</span>.<span class="zi">operations</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">x</span>.<span class="zi">operations</span><span class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">features</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">x</span>.<span class="zi">features</span><span class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">properties</span><span class="zinfix"><span class="symbol">Í</span></span><span class="zi">x</span>.<span class="zi">properties</span></span></td></tr><tr><td class="bl"></td><td class="b"></td><td>/td></tr></tbody></table> </div> --- 1443,1461 ---- <a name="zed-InterfaceClosure"></a><div id="twisty-head-zed-InterfaceClosure" class="twisty-head"><img src="images/left-twisty-13.png" class="twisty-icon"><a href="javascript:show('zed-InterfaceClosure')">InterfaceClosure</a>...</div><div id="twisty-body-zed-InterfaceClosure" class="twisty-body"><img src="images/down-twisty-13.png" class="twisty-icon"><a href="javascript:hide('zed-InterfaceClosure')">InterfaceClosure</a> [ <a onClick="showAll()" href="#zed-InterfaceClosure">show all</a> ] [ <a onClick="hideAll()" href="#zed-InterfaceClosure">hide all</a> ]<br> <p> ! The set of all extended interfaces, faults, and operations that are available on an Interface component consist of those ! that are declared on the component and those that are available on its extendend interfaces. ! This rule can also be expressed by saying that faults and operations that are available on an interface include those that ! are available in the <em xmlns:z="http://www.w3.org/2004/zml" xmlns:xlink="http://www.w3.org/1999/xlink">transitive closure</em> of the extends relation on the interface. </p> <p> ! Let <span class="zi">InterfaceClosure</span> express the Interface transitive closure constraints: </p> ! <ul> ! <li><p>Let <span class="zi">extends</span> be the extension relation on Interface components.</p></li> ! </ul> ! ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">InterfaceClosure</span></span></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">ComponentModel2</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">extends</span> <span class="zinfix">:</span> <span class="zi">Interface</span><span class="zinfix"><span class="mathc">v</span></span><span class="zi">Interface</span></span></td></tr><tr><td class="bl"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">extends</span> <span class="zinfix">=</span> { <span class="zi">x</span><span class="zprefix">,</span> <span class="zi">y</span> <span class="zinfix">:</span> <span class="zi">interfaceComps</span> <span class="zinfix">|</span></span></td></tr><tr><td class="zshemalasttext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">id</span><span class="zinfix"><span class="symbol">Î</span></span><span class="zi">x</span>.<span class="zi">extendedInterfaces</span> }</span></td></tr><tr><td class="l"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zprefix"><span class="symbol">"</span></span><span class="zi">x</span> <span class="zinfix">:</span> <span class="zi">interfaceComps</span> <span class="zinfix"><span class="symbol">·</span></span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">x</span><span class="zinfix"><span class="mathc">x</span></span><span class="zi">x</span><span class="zinfix"><span class="symbol">Ï</span></span><span class="zi">extends</span><span class="zinfix"><span class="mathb">.</span></span></span></td></tr><tr><tdclass="zschematext" colspan="3"><span class="zschematext"> <span class="zi">x</span>.<span class="zi">allExtendedInterfaces</span> <span class="zinfix">=</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"> { <span class="zi">y</span> <span class="zinfix">:</span> <span class="zi">interfaceComps</span> <span class="zinfix">|</span> <span class="zi">x</span><span class="zinfix"><span class="mathc">x</span></span><span class="zi">y</span><span class="zinfix"><span class="symbol">Î</span></span><span class="zi">extends</span><sup>+</sup><span class="zinfix"><span class="symbol">·</span></span> <span class="zi">y</span>.<span class="zi">id</span> }</span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></table> </div> *************** *** 8510,8513 **** --- 8512,8522 ---- <td rowspan="1" colspan="1">20050320</td> <td rowspan="1" colspan="1">AGR</td> + <td rowspan="1" colspan="1"><a href="http://www.w3.org/2002/ws/desc/4/lc-issues/issues.html#LC104">LC104</a>: The operations, faults, features, and properties of an Interface component are those defined directly on the component and do + not include those from the extended interfaces.</td> + </tr> + + <tr> + <td rowspan="1" colspan="1">20050320</td> + <td rowspan="1" colspan="1">AGR</td> <td rowspan="1" colspan="1">Rename Z Notation versions as wsdl20-z.html and wsdl20-z-ie-html.</td> </tr> Index: wsdl20.tex =================================================================== RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.tex,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** wsdl20.tex 20 Mar 2005 19:35:09 -0000 1.28 --- wsdl20.tex 21 Mar 2005 02:13:05 -0000 1.29 *************** *** 1615,1621 **** interface MUST NOT appear as an element of the set of interfaces it extends, either directly or indirectly. ! An interface contains all the operations defined by the interfaces it extends, along with any operations it directly ! defines. In the process, operation components that are equivalent per \hyperlink{compequiv}{\textbf{\ref*{compequiv} Equivalence of Components}} are treated as one. The interface extension mechanism behaves in a similar --- 1615,1623 ---- interface MUST NOT appear as an element of the set of interfaces it extends, either directly or indirectly. ! The set of operations available in an interface includes all the operations defined by the interfaces it extends, along with any operations it directly ! defines. The operations directly defined on an interface are ! referred to as the declared operations of the interface. ! In the process, operation components that are equivalent per \hyperlink{compequiv}{\textbf{\ref*{compequiv} Equivalence of Components}} are treated as one. The interface extension mechanism behaves in a similar *************** *** 1634,1661 **** \item \{name\} REQUIRED. An \textit{xs:QName}. ! \item \{extended interfaces\} OPTIONAL. A set of Interface ! components which this interface extends. This set MUST be closed ! under the operation of adding the values of the \{extended interfaces\} ! properties of all its members. ! \item \{faults\} OPTIONAL. A set of Interface Fault ! components. This set MUST include the values of the \{faults\} ! properties of all the interface definitions that are listed ! under the \{extended interfaces\} property of the component. ! \item \{operations\} OPTIONAL. A set of Interface Operation ! components. This set MUST include the values of the \{operations\} ! properties of all the Interface components that are listed ! under the \{extended interfaces\} property of the component. ! \item \{features\} OPTIONAL. A set of Feature ! components. This set MUST include the values of the \{features\} ! properties of all the Interface components that are listed ! under the \{extended interfaces\} property of the component. ! \item \{properties\} OPTIONAL. A set of Property ! components. This set MUST include the values of the \{properties\} ! properties of all the Interface components that are listed ! under the \{extended interfaces\} property of the component. \end{itemize} --- 1636,1653 ---- \item \{name\} REQUIRED. An \textit{xs:QName}. ! \item \{extended interfaces\} OPTIONAL. A set of declared Interface ! components which this interface extends. ! \item \{faults\} OPTIONAL. The set of declared Interface Fault ! components. ! \item \{operations\} OPTIONAL. A set of declared Interface Operation ! components. ! \item \{features\} OPTIONAL. A set of declared Feature ! components. ! \item \{properties\} OPTIONAL. A set of declared Property ! components. \end{itemize} *************** *** 1664,1667 **** --- 1656,1664 ---- Let $Interface$ be the set of all Interface components: + \begin{itemize} + \item Let $allExtendedInterfaces$ be the set off all interfaces that are extended directly or indirectly by this interface. + \item Let $allFaults$ be the set of all faults that are directly or indirectly on this interface. + \item Let $allOperations$ be the set of all operations that are directly or indirectly on this interface. + \end{itemize} \begin{schema}{Interface} *************** *** 1671,1674 **** --- 1668,1679 ---- faults : \power ID \\ operations : \power ID + \also + allExtendedInterfaces : \power ID \\ + allFaults : \power ID \\ + allOperations : \power ID + \where + extendedInterfaces \subseteq allExtendedInterfaces \\ + faults \subseteq allFaults \\ + operations \subseteq allOperations \end{schema} *************** *** 1692,1696 **** \forall Interface | \theta Interface \in interfaceComps @ \\ \t1 BaseRI \land \\ - \t1 id \notin extendedInterfaces \land \\ \t1 extendedInterfaces \subset interfaceIds \land \\ \t1 faults \subseteq interfaceFaultIds \land \\ --- 1697,1700 ---- *************** *** 1712,1716 **** \begin{itemize} \item Every Interface component satifies the base referential integrity constraints. - \item No Interface component extends itself. \item The Interface components extended by each Interface component are contained in the component model. \item The Fault components of each Interface component are contained in the component model. --- 1716,1719 ---- *************** *** 1723,1744 **** ! The properties of an Interface component contain the properties of each ! Interface component that it extends. ! Let $InterfaceClosure$ express the Interface closure constraints: \begin{schema}{InterfaceClosure} ! ComponentModel2 \where ! \forall x, y : interfaceComps | \\ ! \t1 y.id \in x.extendedInterfaces @ \\ ! \t2 y.extendedInterfaces \subset x.extendedInterfaces \land \\ ! \t2 y.faults \subseteq x.faults \land \\ ! \t2 y.operations \subseteq x.operations \land \\ ! \t2 y.features \subseteq x.features \land \\ ! \t2 y.properties \subseteq x.properties \end{schema} --- 1726,1754 ---- ! The set of all extended interfaces, faults, and operations that are available on an Interface component consist of those ! that are declared on the component and those that are available on its extendend interfaces. ! This rule can also be expressed by saying that faults and operations that are available on an interface include those that ! are available in the transitive closure of the extends relation on the interface. ! Let $InterfaceClosure$ express the Interface transitive closure constraints: + \begin{itemize} + \item Let $extends$ be the extension relation on Interface components. + \end{itemize} + \begin{schema}{InterfaceClosure} ! ComponentModel2 \\ ! extends : Interface \rel Interface \where ! extends = \{~x, y : interfaceComps | \\ ! \t1 y.id \in x.extendedInterfaces~\} ! \also ! \forall x : interfaceComps @ \\ ! \t1 x \mapsto x \notin extends \land \\ ! \t1 x.allExtendedInterfaces = \\ ! \t2 \{~y : interfaceComps | x \mapsto y \in extends\plus @ y.id~\} \end{schema} *************** *** 9178,9181 **** --- 9188,9198 ---- 20050320& AGR& + \href{http://www.w3.org/2002/ws/desc/4/lc-issues/issues.html#LC104}{LC104}: The operations, faults, features, and properties of an Interface component are those defined directly on the component and do + not include those from the extended interfaces. + \\ \hline + + + 20050320& + AGR& Rename Z Notation versions as wsdl20-z.html and wsdl20-z-ie-html. \\ \hline Index: wsdl20.xml =================================================================== RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.xml,v retrieving revision 1.192 retrieving revision 1.193 diff -C2 -d -r1.192 -r1.193 *** wsdl20.xml 20 Mar 2005 19:35:10 -0000 1.192 --- wsdl20.xml 21 Mar 2005 02:13:05 -0000 1.193 *************** *** 1593,1603 **** application.</p> ! <p> An interface can optionally extend one or more other interfaces. To avoid circular definitions, an interface MUST NOT appear as an element of the set of interfaces it extends, either directly or indirectly. ! An interface contains all the operations defined by the interfaces it extends, along with any operations it directly ! defines. In the process, operation components that are equivalent per <specref ref="compequiv"/> are treated as one. The interface extension mechanism behaves in a similar --- 1593,1605 ---- application.</p> ! <p diff="chg"> An interface can optionally extend one or more other interfaces. To avoid circular definitions, an interface MUST NOT appear as an element of the set of interfaces it extends, either directly or indirectly. ! The set of operations available in an interface includes all the operations defined by the interfaces it extends, along with any operations it directly ! defines. The operations directly defined on an interface are ! referred to as the <em>declared</em> operations of the interface. ! In the process, operation components that are equivalent per <specref ref="compequiv"/> are treated as one. The interface extension mechanism behaves in a similar *************** *** 1616,1643 **** <item><p>{name} REQUIRED. An <emph>xs:QName</emph>.</p></item> ! <item><p>{extended interfaces} OPTIONAL. A set of Interface ! components which this interface extends. This set MUST be closed ! under the operation of adding the values of the {extended interfaces} ! properties of all its members.</p> </item> ! <item><p>{faults} OPTIONAL. A set of Interface Fault ! components. This set MUST include the values of the {faults} ! properties of all the interface definitions that are listed ! under the {extended interfaces} property of the component.</p></item> ! <item><p>{operations} OPTIONAL. A set of Interface Operation ! components. This set MUST include the values of the {operations} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></item> ! <item><p>{features} OPTIONAL. A set of Feature ! components. This set MUST include the values of the {features} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></item> ! <item><p>{properties} OPTIONAL. A set of Property ! components. This set MUST include the values of the {properties} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></item> </ulist> --- 1618,1635 ---- <item><p>{name} REQUIRED. An <emph>xs:QName</emph>.</p></item> ! <item><p diff="chg">{extended interfaces} OPTIONAL. A set of declared Interface ! components which this interface extends.</p> </item> ! <item><p diff="chg">{faults} OPTIONAL. The set of declared Interface Fault ! components.</p></item> ! <item><p diff="chg">{operations} OPTIONAL. A set of declared Interface Operation ! components.</p></item> ! <item><p diff="chg">{features} OPTIONAL. A set of declared Feature ! components.</p></item> ! <item><p diff="chg">{properties} OPTIONAL. A set of declared Property ! components.</p></item> </ulist> *************** *** 1645,1648 **** --- 1637,1645 ---- <z:notation name="Interface"> <p>Let <z:i>Interface</z:i> be the set of all Interface components:</p> + <ulist> + <item><p>Let <z:i>allExtendedInterfaces</z:i> be the set off all interfaces that are extended directly or indirectly by this interface.</p></item> + <item><p>Let <z:i>allFaults</z:i> be the set of all faults that are directly or indirectly on this interface.</p></item> + <item><p>Let <z:i>allOperations</z:i> be the set of all operations that are directly or indirectly on this interface.</p></item> + </ulist> <schema xmlns="http://www.w3.org/2004/zml" name="Interface"> *************** *** 1652,1655 **** --- 1649,1660 ---- faults : <power/> ID <nl/> operations : <power/> ID + <also/> + allExtendedInterfaces : <power/> ID <nl/> + allFaults : <power/> ID <nl/> + allOperations : <power/> ID + <where/> + extendedInterfaces <subseteq/> allExtendedInterfaces <nl/> + faults <subseteq/> allFaults <nl/> + operations <subseteq/> allOperations </schema> *************** *** 1672,1676 **** <forall/> Interface | <theta/>Interface <in/> interfaceComps @ <nl/> <t1/> BaseRI <land/> <nl/> - <t1/> id <notin/> extendedInterfaces <land/> <nl/> <t1/> extendedInterfaces <subset/> interfaceIds <land/> <nl/> <t1/> faults <subseteq/> interfaceFaultIds <land/> <nl/> --- 1677,1680 ---- *************** *** 1692,1696 **** <ulist> <item><p>Every Interface component satifies the base referential integrity constraints.</p></item> - <item><p>No Interface component extends itself.</p></item> <item><p>The Interface components extended by each Interface component are contained in the component model.</p></item> <item><p>The Fault components of each Interface component are contained in the component model.</p></item> --- 1696,1699 ---- *************** *** 1702,1723 **** <z:notation name="InterfaceClosure"> <p> ! The properties of an Interface component contain the properties of each ! Interface component that it extends. </p> <p> ! Let <z:i>InterfaceClosure</z:i> express the Interface closure constraints: </p> <schema xmlns="http://www.w3.org/2004/zml" name="InterfaceClosure"> ! ComponentModel2 <where/> ! <forall/> x, y : interfaceComps | <nl/> ! <t1/> y.id <in/> x.extendedInterfaces @ <nl/> ! <t2/> y.extendedInterfaces <subset/> x.extendedInterfaces <land/> <nl/> ! <t2/> y.faults <subseteq/> x.faults <land/> <nl/> ! <t2/> y.operations <subseteq/> x.operations <land/> <nl/> ! <t2/> y.features <subseteq/> x.features <land/> <nl/> ! <t2/> y.properties <subseteq/> x.properties </schema> </z:notation> --- 1705,1733 ---- <z:notation name="InterfaceClosure"> <p> ! The set of all extended interfaces, faults, and operations that are available on an Interface component consist of those ! that are declared on the component and those that are available on its extendend interfaces. ! This rule can also be expressed by saying that faults and operations that are available on an interface include those that ! are available in the <em>transitive closure</em> of the extends relation on the interface. </p> <p> ! Let <z:i>InterfaceClosure</z:i> express the Interface transitive closure constraints: </p> + <ulist> + <item><p>Let <z:i>extends</z:i> be the extension relation on Interface components.</p></item> + </ulist> + <schema xmlns="http://www.w3.org/2004/zml" name="InterfaceClosure"> ! ComponentModel2 <nl/> ! extends : Interface <rel/> Interface <where/> ! extends = {~x, y : interfaceComps | <nl/> ! <t1/> y.id <in/> x.extendedInterfaces~} ! <also/> ! <forall/> x : interfaceComps @ <nl/> ! <t1/> x <mapsto/> x <notin/> extends <land/> <nl/> ! <t1/> x.allExtendedInterfaces = <nl/> ! <t2/> {~y : interfaceComps | x <mapsto/> y <in/> extends<plus/> @ y.id~} </schema> </z:notation> *************** *** 8942,8945 **** --- 8952,8962 ---- <td>20050320</td> <td>AGR</td> + <td><loc href="http://www.w3.org/2002/ws/desc/4/lc-issues/issues.html#LC104">LC104</loc>: The operations, faults, features, and properties of an Interface component are those defined directly on the component and do + not include those from the extended interfaces.</td> + </tr> + + <tr> + <td>20050320</td> + <td>AGR</td> <td>Rename Z Notation versions as wsdl20-z.html and wsdl20-z-ie-html.</td> </tr> Index: wsdl20-z.html =================================================================== RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20-z.html,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** wsdl20-z.html 20 Mar 2005 19:35:09 -0000 1.7 --- wsdl20-z.html 21 Mar 2005 02:13:04 -0000 1.8 *************** *** 1351,1361 **** application.</p> ! <p> An interface can optionally extend one or more other interfaces. To avoid circular definitions, an interface MUST NOT appear as an element of the set of interfaces it extends, either directly or indirectly. ! An interface contains all the operations defined by the interfaces it extends, along with any operations it directly ! defines. In the process, operation components that are equivalent per <a href="#compequiv"><b>2.17 Equivalence of Components</b></a> are treated as one. The interface extension mechanism behaves in a similar --- 1351,1363 ---- application.</p> ! <p class="diff-chg"> An interface can optionally extend one or more other interfaces. To avoid circular definitions, an interface MUST NOT appear as an element of the set of interfaces it extends, either directly or indirectly. ! The set of operations available in an interface includes all the operations defined by the interfaces it extends, along with any operations it directly ! defines. The operations directly defined on an interface are ! referred to as the <em xmlns:z="http://www.w3.org/2004/zml" xmlns:xlink="http://www.w3.org/1999/xlink">declared</em> operations of the interface. ! In the process, operation components that are equivalent per <a href="#compequiv"><b>2.17 Equivalence of Components</b></a> are treated as one. The interface extension mechanism behaves in a similar *************** *** 1374,1401 **** <li><p>{name} REQUIRED. An <em>xs:QName</em>.</p></li> ! <li><p>{extended interfaces} OPTIONAL. A set of Interface ! components which this interface extends. This set MUST be closed ! under the operation of adding the values of the {extended interfaces} ! properties of all its members.</p> </li> ! <li><p>{faults} OPTIONAL. A set of Interface Fault ! components. This set MUST include the values of the {faults} ! properties of all the interface definitions that are listed ! under the {extended interfaces} property of the component.</p></li> ! <li><p>{operations} OPTIONAL. A set of Interface Operation ! components. This set MUST include the values of the {operations} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></li> ! <li><p>{features} OPTIONAL. A set of Feature ! components. This set MUST include the values of the {features} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></li> ! <li><p>{properties} OPTIONAL. A set of Property ! components. This set MUST include the values of the {properties} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></li> </ul> --- 1376,1393 ---- <li><p>{name} REQUIRED. An <em>xs:QName</em>.</p></li> ! <li><p class="diff-chg">{extended interfaces} OPTIONAL. A set of declared Interface ! components which this interface extends.</p> </li> ! <li><p class="diff-chg">{faults} OPTIONAL. The set of declared Interface Fault ! components.</p></li> ! <li><p class="diff-chg">{operations} OPTIONAL. A set of declared Interface Operation ! components.</p></li> ! <li><p class="diff-chg">{features} OPTIONAL. A set of declared Feature ! components.</p></li> ! <li><p class="diff-chg">{properties} OPTIONAL. A set of declared Property ! components.</p></li> </ul> *************** *** 1403,1408 **** <a name="zed-Interface"></a><div id="twisty-head-zed-Interface" class="twisty-head"><img src="images/left-twisty-13.png" class="twisty-icon"><a href="javascript:show('zed-Interface')">Interface</a>...</div><div id="twisty-body-zed-Interface" class="twisty-body"><img src="images/down-twisty-13.png" class="twisty-icon"><a href="javascript:hide('zed-Interface')">Interface</a> [ <a onClick="showAll()" href="#zed-Interface">show all</a> ] [ <a onClick="hideAll()" href="#zed-Interface">hide all</a> ]<br> <p>Let <span class="zi">Interface</span> be the set of all Interface components:</p> ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">Interface</span></span></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">Base</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">name</span> <span class="zinfix">:</span> <span class="zi">QName</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">extendedInterfaces</span> <span class="zinfix">:</span><span class="zprefix">ℙ</span><span class="zi">ID</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">faults</span> <span class="zinfix">:</span><span class="zprefix">ℙ</span><span class="zi">ID</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">operations</span <span class="zinfix">:</span><span class="zprefix">ℙ</span><span class="zi">ID</span></span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></table> <div class="zsee"><span class="zsmall">See<span class="zi"> <a href="#zed-Base">Base</a>, <a href="#zed-QName">QName</a>, <a href="#zed-ID">ID</a>.</span></span></div> --- 1395,1405 ---- <a name="zed-Interface"></a><div id="twisty-head-zed-Interface" class="twisty-head"><img src="images/left-twisty-13.png" class="twisty-icon"><a href="javascript:show('zed-Interface')">Interface</a>...</div><div id="twisty-body-zed-Interface" class="twisty-body"><img src="images/down-twisty-13.png" class="twisty-icon"><a href="javascript:hide('zed-Interface')">Interface</a> [ <a onClick="showAll()" href="#zed-Interface">show all</a> ] [ <a onClick="hideAll()" href="#zed-Interface">hide all</a> ]<br> <p>Let <span class="zi">Interface</span> be the set of all Interface components:</p> + <ul> + <li><p>Let <span class="zi">allExtendedInterfaces</span> be the set off all interfaces that are extended directly or indirectly by this interface.</p></li> + <li><p>Let <span class="zi">allFaults</span> be the set of all faults that are directly or indirectly on this interface.</p></li> + <li><p>Let <span class="zi">allOperations</span> be the set of all operations that are directly or indirectly on this interface.</p></li> + </ul> ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">Interface</span></span></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">Base</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">name</span> <span class="zinfix">:</span> <span class="zi">QName</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">extendedInterfaces</span> <span class="zinfix">:</span><span class="zprefix">ℙ</span><span class="zi">ID</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">faults</span> <span class="zinfix">:</span><span class="zprefix">ℙ</span><span class="zi">ID</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">operations</span <span class="zinfix">:</span><span class="zprefix">ℙ</span><span class="zi">ID</span></span></td></tr><tr><td class="l"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">allExtendedInterfaces</span> <span class="zinfix">:</span><span class="zprefix">ℙ</span><span class="zi">ID</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">allFaults</span> <span class="zinfix">:</span><span class="zprefix">ℙ</span><span class="zi">ID</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">allOperations</span> <span class="zinfix">:</span><span class="zprefix">ℙ</span><span class="zi">ID</span></span></td></tr><tr><td class="bl"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">extendedInterfaces</span><span class="zinfix">⊆</span><span class="zi">allExtendedInterfaces</span></spa></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">faults</span><span class="zinfix">⊆</span><span class="zi">allFaults</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">operations</span><span class="zinfix">⊆</span><span class="zi">allOperations</span></span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></table> <div class="zsee"><span class="zsmall">See<span class="zi"> <a href="#zed-Base">Base</a>, <a href="#zed-QName">QName</a>, <a href="#zed-ID">ID</a>.</span></span></div> *************** *** 1419,1423 **** </p> ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">InterfaceRI</span></span></td><td></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">ComponentModel2</span></span></td></tr><tr><td class="bl"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zprefix">∀</span><span class="zi">Interface</span> <span class="zinfix">|</span><span class="zprefix"><span class="zi">θ</span></span><span class="zi">Interface</span><span class="zinfix">∈</span><span class="zi">interfaceComps</span> <span class="zinfix">•</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">BaseRI</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematxt"> <span class="zi">id</span><span class="zinfix">∉</span><span class="zi">extendedInterfaces</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">extendedInterfaces</span><span class="zinfix">⊂</span><span class="zi">interfaceIds</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">faults</span><span class="zinfix">⊆</span><span class="zi">interfaceFaultIds</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"> <span class="zi">operations</span><span class="zinfix">⊆</span><span class="zi">interfaceOpIds</span></span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></table> <div class="zsee"><span class="zsmall">See<span class="zi"> <a href="#zed-ComponentModel2">ComponentModel2</a>, <a href="#zed-Interface">Interface</a>, <a href="#zed-BaseRI">BaseRI</a>.</span></span></div> --- 1416,1420 ---- </p> ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">InterfaceRI</span></span></td><td></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">ComponentModel2</span></span></td></tr><tr><td class="bl"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zprefix">∀</span><span class="zi">Interface</span> <span class="zinfix">|</span><span class="zprefix"><span class="zi">θ</span></span><span class="zi">Interface</span><span class="zinfix">∈</span><span class="zi">interfaceComps</span> <span class="zinfix">•</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">BaseRI</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematxt"> <span class="zi">extendedInterfaces</span><span class="zinfix">⊂</span><span class="zi">interfaceIds</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">faults</span><span class="zinfix">⊆</span><span class="zi">interfaceFaultIds</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"> <span class="zi">operations</span><span class="zinfix">⊆</span><span class="zi">interfaceOpIds</span></span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></table> <div class="zsee"><span class="zsmall">See<span class="zi"> <a href="#zed-ComponentModel2">ComponentModel2</a>, <a href="#zed-Interface">Interface</a>, <a href="#zed-BaseRI">BaseRI</a>.</span></span></div> *************** *** 1435,1439 **** <ul> <li><p>Every Interface component satifies the base referential integrity constraints.</p></li> - <li><p>No Interface component extends itself.</p></li> <li><p>The Interface components extended by each Interface component are contained in the component model.</p></li> <li><p>The Fault components of each Interface component are contained in the component model.</p></li> --- 1432,1435 ---- *************** *** 1445,1457 **** <a name="zed-InterfaceClosure"></a><div id="twisty-head-zed-InterfaceClosure" class="twisty-head"><img src="images/left-twisty-13.png" class="twisty-icon"><a href="javascript:show('zed-InterfaceClosure')">InterfaceClosure</a>...</div><div id="twisty-body-zed-InterfaceClosure" class="twisty-body"><img src="images/down-twisty-13.png" class="twisty-icon"><a href="javascript:hide('zed-InterfaceClosure')">InterfaceClosure</a> [ <a onClick="showAll()" href="#zed-InterfaceClosure">show all</a> ] [ <a onClick="hideAll()" href="#zed-InterfaceClosure">hide all</a> ]<br> <p> ! The properties of an Interface component contain the properties of each ! Interface component that it extends. </p> <p> ! Let <span class="zi">InterfaceClosure</span> express the Interface closure constraints: </p> ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">InterfaceClosure</span></span></td><td></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">ComponentModel2</span></span></td></tr><tr><td class="bl"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zprefix">∀</span><span class="zi">x</span><span class="zprefix">,</span> <span class="zi">y</span> <span class="zinfix">:</span> <span class="zi">interfaceComps</span> <span class="zinfix">|</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">id</span><span class="zinfix">∈</span><span class="zi">x</span>.<span class="zi">extendedInterfaces</span> <span class="zinfix">•</span></span></td></tr><tr><td lass="zschematext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">extendedInterfaces</span><span class="zinfix">⊂</span><span class="zi">x</span>.<span class="zi">extendedInterfaces</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">faults</span><span class="zinfix">⊆</span><span class="zi">x</span>.<span class="zi">faults</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">operations</span><span class="zinfix">⊆</span><span class="zi">x</span>.<span class="zi">operations</span><span class="zinfix">∧</span></span></td></t><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">features</span><span class="zinfix">⊆</span><span class="zi">x</span>.<span class="zi">features</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">properties</span><span class="zinfix">⊆</span><span class="zi">x</span>.<span class="zi">properties</span></span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></table> </div> --- 1441,1459 ---- <a name="zed-InterfaceClosure"></a><div id="twisty-head-zed-InterfaceClosure" class="twisty-head"><img src="images/left-twisty-13.png" class="twisty-icon"><a href="javascript:show('zed-InterfaceClosure')">InterfaceClosure</a>...</div><div id="twisty-body-zed-InterfaceClosure" class="twisty-body"><img src="images/down-twisty-13.png" class="twisty-icon"><a href="javascript:hide('zed-InterfaceClosure')">InterfaceClosure</a> [ <a onClick="showAll()" href="#zed-InterfaceClosure">show all</a> ] [ <a onClick="hideAll()" href="#zed-InterfaceClosure">hide all</a> ]<br> <p> ! The set of all extended interfaces, faults, and operations that are available on an Interface component consist of those ! that are declared on the component and those that are available on its extendend interfaces. ! This rule can also be expressed by saying that faults and operations that are available on an interface include those that ! are available in the <em xmlns:z="http://www.w3.org/2004/zml" xmlns:xlink="http://www.w3.org/1999/xlink">transitive closure</em> of the extends relation on the interface. </p> <p> ! Let <span class="zi">InterfaceClosure</span> express the Interface transitive closure constraints: </p> ! <ul> ! <li><p>Let <span class="zi">extends</span> be the extension relation on Interface components.</p></li> ! </ul> ! ! <table class="zschema"><col class="zschema1"><col class="zschema2"><col class="zschema3"><tbody><tr><td colspan="2" class="zschemaname"><span class="zschemaname"><span class="zi">InterfaceClosure</span></span></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">ComponentModel2</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"><span class="zi">extends</span> <span class="zinfix">:</span> <span class="zi">Interface</span><span class="zinfix">↔</span><span class="zi">Interface</span></span></td></tr><tr><td class="bl"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zi">extends</span> <span class="zinfix">=</span> { <span class="zi">x</span><span class="zprefix">,</span> <span class="zi">y</span> <span class="zinfix">:</span> <span class="zi">interfaceComps</span> <span class="zinfix">|</span></span></td></tr><tr><td class="zschemalasttext" colspan"3"><span class="zschematext"> <span class="zi">y</span>.<span class="zi">id</span><span class="zinfix">∈</span><span class="zi">x</span>.<span class="zi">extendedInterfaces</span> }</span></td></tr><tr><td class="l"></td><td></td><td></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"><span class="zprefix">∀</span><span class="zi">x</span> <span class="zinfix">:</span> <span class="zi">interfaceComps</span> <span class="zinfix">•</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">x</span><span class="zinfix">↦</span><span class="zi">x</span><span class="zinfix">∉</span><span class="zi">extends</span><span class="zinfix">∧</span></span></td></tr><tr><td class="zschematext" colspan="3"><span class="zschematext"> <span class="zi">x</span>.<span class="zi">allExtendedInterfaces</span> <span clas="zinfix">=</span></span></td></tr><tr><td class="zschemalasttext" colspan="3"><span class="zschematext"> { <span class="zi">y</span> <span class="zinfix">:</span> <span class="zi">interfaceComps</span> <span class="zinfix">|</span> <span class="zi">x</span><span class="zinfix">↦</span><span class="zi">y</span><span class="zinfix">∈</span><span class="zi">extends</span><sup>+</sup><span class="zinfix">•</span> <span class="zi">y</span>.<span class="zi">id</span> }</span></td></tr><tr><td class="bl"></td><td class="b"></td><td></td></tr></tbody></table> </div> *************** *** 8508,8511 **** --- 8510,8520 ---- <td rowspan="1" colspan="1">20050320</td> <td rowspan="1" colspan="1">AGR</td> + <td rowspan="1" colspan="1"><a href="http://www.w3.org/2002/ws/desc/4/lc-issues/issues.html#LC104">LC104</a>: The operations, faults, features, and properties of an Interface component are those defined directly on the component and do + not include those from the extended interfaces.</td> + </tr> + + <tr> + <td rowspan="1" colspan="1">20050320</td> + <td rowspan="1" colspan="1">AGR</td> <td rowspan="1" colspan="1">Rename Z Notation versions as wsdl20-z.html and wsdl20-z-ie-html.</td> </tr> Index: wsdl20.pdf =================================================================== RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.pdf,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** wsdl20.pdf 20 Mar 2005 19:35:09 -0000 1.21 --- wsdl20.pdf 21 Mar 2005 02:13:04 -0000 1.22 *************** *** 820,830 **** endobj 553 0 obj << ! /Length 991 /Filter /FlateDecode >> stream xڝVKo6W@% DRϜEu큱[-93C"Y-X|<H{1qK2^2j7e&ِ,2aysД9)b܌nvܻj'& wD9<O'&iYZ&A 1ia^+u¿Bt6V`Ѭ} ! 4w - #_-F[k 2ÒYo֗Aę?k94>5|4A&S/-uUS!b,2"'X_XI$#$YKN2?t:~= *$bvc(sl)_Mn5o.s+V95@yW1Ó;DJw]?p ! {fv5Hı]Tq~ {FaϩOI.3CWyaG}F-QM{Bte6U}JT<W]O4zp SKi(b<~P7cJ@˖>nj[zE1"((Pͅ:D 9ysK.nh*vUۮV=nm)lnӹn&QqTo3px{╘$>,b \! {fCM%Hd"'_ÄL{0.(thu@cًW{M)i,0~uo[~m)t,=T:t$-L=Rk_ꍪPT +i@=Є`v~Cu6~r$?endstream endobj [...23349 lines suppressed...] ! 0000764427 00000 n ! 0000764553 00000 n ! 0000764679 00000 n ! 0000764759 00000 n ! 0000764860 00000 n ! 0000777803 00000 n ! 0000795077 00000 n ! 0000795118 00000 n ! 0000795158 00000 n ! 0000795350 00000 n trailer << ! /Size 2618 ! /Root 2616 0 R ! /Info 2617 0 R ! /ID [<AF65EED6CB6F61B1C246DF7E6C9353D4> <AF65EED6CB6F61B1C246DF7E6C9353D4>] >> startxref ! 795598 %%EOF Index: wsdl20.html =================================================================== RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.html,v retrieving revision 1.163 retrieving revision 1.164 diff -C2 -d -r1.163 -r1.164 *** wsdl20.html 20 Mar 2005 19:35:09 -0000 1.163 --- wsdl20.html 21 Mar 2005 02:13:05 -0000 1.164 *************** *** 893,903 **** application.</p> ! <p> An interface can optionally extend one or more other interfaces. To avoid circular definitions, an interface MUST NOT appear as an element of the set of interfaces it extends, either directly or indirectly. ! An interface contains all the operations defined by the interfaces it extends, along with any operations it directly ! defines. In the process, operation components that are equivalent per <a href="#compequiv"><b>2.17 Equivalence of Components</b></a> are treated as one. The interface extension mechanism behaves in a similar --- 893,905 ---- application.</p> ! <p class="diff-chg"> An interface can optionally extend one or more other interfaces. To avoid circular definitions, an interface MUST NOT appear as an element of the set of interfaces it extends, either directly or indirectly. ! The set of operations available in an interface includes all the operations defined by the interfaces it extends, along with any operations it directly ! defines. The operations directly defined on an interface are ! referred to as the <em xmlns:z="http://www.w3.org/2004/zml" xmlns:xlink="http://www.w3.org/1999/xlink">declared</em> operations of the interface. ! In the process, operation components that are equivalent per <a href="#compequiv"><b>2.17 Equivalence of Components</b></a> are treated as one. The interface extension mechanism behaves in a similar *************** *** 916,943 **** <li><p>{name} REQUIRED. An <em>xs:QName</em>.</p></li> ! <li><p>{extended interfaces} OPTIONAL. A set of Interface ! components which this interface extends. This set MUST be closed ! under the operation of adding the values of the {extended interfaces} ! properties of all its members.</p> </li> ! <li><p>{faults} OPTIONAL. A set of Interface Fault ! components. This set MUST include the values of the {faults} ! properties of all the interface definitions that are listed ! under the {extended interfaces} property of the component.</p></li> ! <li><p>{operations} OPTIONAL. A set of Interface Operation ! components. This set MUST include the values of the {operations} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></li> ! <li><p>{features} OPTIONAL. A set of Feature ! components. This set MUST include the values of the {features} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></li> ! <li><p>{properties} OPTIONAL. A set of Property ! components. This set MUST include the values of the {properties} ! properties of all the Interface components that are listed ! under the {extended interfaces} property of the component.</p></li> </ul> --- 918,935 ---- <li><p>{name} REQUIRED. An <em>xs:QName</em>.</p></li> ! <li><p class="diff-chg">{extended interfaces} OPTIONAL. A set of declared Interface ! components which this interface extends.</p> </li> ! <li><p class="diff-chg">{faults} OPTIONAL. The set of declared Interface Fault ! components.</p></li> ! <li><p class="diff-chg">{operations} OPTIONAL. A set of declared Interface Operation ! components.</p></li> ! <li><p class="diff-chg">{features} OPTIONAL. A set of declared Feature ! components.</p></li> ! <li><p class="diff-chg">{properties} OPTIONAL. A set of declared Property ! components.</p></li> </ul> *************** *** 7508,7511 **** --- 7500,7510 ---- <td rowspan="1" colspan="1">20050320</td> <td rowspan="1" colspan="1">AGR</td> + <td rowspan="1" colspan="1"><a href="http://www.w3.org/2002/ws/desc/4/lc-issues/issues.html#LC104">LC104</a>: The operations, faults, features, and properties of an Interface component are those defined directly on the component and do + not include those from the extended interfaces.</td> + </tr> + + <tr> + <td rowspan="1" colspan="1">20050320</td> + <td rowspan="1" colspan="1">AGR</td> <td rowspan="1" colspan="1">Rename Z Notation versions as wsdl20-z.html and wsdl20-z-ie-html.</td> </tr>
Received on Monday, 21 March 2005 02:13:09 UTC