- From: Monica J. Martin <Monica.Martin@Sun.COM>
- Date: Thu, 11 Jan 2007 16:42:00 -0800
- To: "public-ws-policy@w3.org" <public-ws-policy@w3.org>
See: http://www.w3.org/Bugs/Public/show_bug.cgi?id=4196 Title: Clarify namespace restrictions Target: Framework and Primer [reference 1] Description and Justification: The Framework specification specifies treatment of unknown extensibility elements and attributes. In reviewing this and the other WG documents for a related issue on cleanup items on extensibility and consistency with the XML schema, ambiguous or missing statements were identified for the Primer and the Framework related to namespaces. The Primer specifies namespace restrictions rather than the Framework document. Consistency and clarity between all documents with the requirements around extensibility for namespaces are suggested. [for reference only] Reference this snippet from the existing schema. [reference 1] Note this snippet is only included for information and reference only. This snippet is NOT part of any proposed change for the Framework. ...<xs:element name="Policy" > <xs:complexType> <xs:complexContent> <xs:extension base="tns:OperatorContentType" > <xs:attribute name="Name" type="xs:anyURI" /> <xs:attribute ref="wsu:Id" /> <xs:anyAttribute namespace="##any" processContents="lax" /> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <xs:element name="All" type="tns:OperatorContentType" /> <xs:element name="ExactlyOne" type="tns:OperatorContentType" /> <xs:complexType name="OperatorContentType" > <xs:sequence> <xs:choice minOccurs="0" maxOccurs="unbounded" > <xs:element ref="tns:Policy" /> <xs:element ref="tns:All" /> <xs:element ref="tns:ExactlyOne" /> <xs:element ref="tns:PolicyReference" /> <xs:any namespace="##other" processContents="lax" /> </xs:choice> </xs:sequence> </xs:complexType>... See also existing text in the Primer, Section 3.8, Extensibility and Versioning: [reference 2] "Web Services Policy language is an extensible language by design. The |Policy|, |ExactlyOne|, |All| and |PolicyReference| elements are extensible. The |Policy|, |ExactlyOne| and |All| elements allow child element and attribute extensibility. Extensions must not use the policy language XML namespace name. A consuming processor processes known attributes and elements, ignores unknown attributes and treats unknown elements as policy assertions. The |PolicyReference| element allows element and attribute extensibility." See also in Section 2.3, Framework, on the policy namespace: "All information items defined by this specification are identified by the XML namespace URI [XML Namespaces] <link> |http://www.w3.org/@@@@/@@/ws-policy|." [for reference only] Proposal: Clarify statements in the Primer [2] and add such information to the Framework document [2] around namespaces related to extensions. The Framework discusses arbitrary namespaces but not specific restrictions, while the cited statements in the Primer need to be updated. PROPOSED CHANGE: For Framework, Section 2.2, Extensibility: [start proposed change - add at the end of the existing paragraph] Extensions to Child Element Information Items added to Policy operators wsp:Policy, wsp:All and wsp:ExactlyOne MUST NOT use the policy language XML namespace name. [end proposed change] PROPOSED CHANGE: For Primer, Section 3.8, Extensibility and Versioning Change from: "Web Services Policy language is an extensible language by design. The |Policy|, |ExactlyOne|, |All| and |PolicyReference| elements are extensible. The |Policy|, |ExactlyOne| and |All| elements allow child element and attribute extensibility. Extensions must not use the policy language XML namespace name. A consuming processor processes known attributes and elements, ignores unknown attributes and treats unknown elements as policy assertions. The |PolicyReference| element allows element and attribute extensibility." Change to: "Web Services Policy language is an extensible language by design. The |Policy|, |ExactlyOne|, |All| and |PolicyReference| elements are extensible. The |Policy|, |ExactlyOne| and |All| elements allow child element and attribute extensibility. Child element extensions to these elements must not use the policy language XML namespace name. A consuming processor processes known attributes and elements, ignores unknown attributes and treats unknown elements as policy assertions. The |PolicyReference| element allows element and attribute extensibility." Note: The extensibility question irrespective of namespaces is handled in a separate issue. References [reference 1] http://dev.w3.org/cvsweb/~checkout~/2006/ws/policy/ws-policy.xsd?rev=1.6&content-type=text/plain (schema) [reference 2] Editor's copies and CVS area 10 January 2007: http://www.w3.org/2002/ws/policy See also Section 5, Lifecyle of Assertions in Guidelines http://dev.w3.org/cvsweb/~checkout~/2006/ws/policy/ws-policy-framework.html?content-type=text/html;%20charset=utf-8 (Framework) http://dev.w3.org/cvsweb/~checkout~/2006/ws/policy/ws-policy-primer.html?content-type=text/html;%20charset=utf-8 (Primer)
Received on Friday, 12 January 2007 00:42:04 UTC